1 / 36

G64INC Introduction to Network Communications

G64INC Introduction to Network Communications. Ho Sooi Hock. Wide Area Networks. Outline. Overview of WANs & Switching Packet Forwarding Datagram Virtual Circuit WAN Hierarchical Addressing Dynamic Routing Computation Link State Distance Vector Performance Characteristics.

lala
Download Presentation

G64INC Introduction to Network Communications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. G64INCIntroduction to Network Communications Ho Sooi Hock Wide Area Networks

  2. Outline • Overview of WANs & Switching • Packet Forwarding • Datagram • Virtual Circuit • WAN Hierarchical Addressing • Dynamic Routing Computation • Link State • Distance Vector • Performance Characteristics

  3. Wide Area Networks • A WAN (Wide Area Network) spans a large geographical area, often across a state, country or continent • Most WANs are constructed using the following two distinct components: transmission lines and switching elements • WAN topologies, normally consisting of point-to-point links between switches, are chosen to accommodate expected traffic and to provide network redundancy • As WANs are used to connect hosts owned by different organisations and users, internetworking of heterogeneous networking technologies is expected • WANs can be classified according to ownership of the above two components • public, private or virtual private network (VPN)

  4. Network Ownership • Private network • owned by the people who use it • usually LANs combined with private switches and leased lines or virtual circuits • Public network • owned and operated by an independent service provider to provide potential communications between any pair of subscribers • Virtual private network • combines the features of private and public networks. • uses public network for connectivity but ensures privacy of network traffic for an organisation • connections, called tunnels, are used as point to point link between sites with data encryption

  5. Switching Technologies Taxonomy of switched networks

  6. Packet vs. Circuit Switching • In circuit switching, the resources need to be reserved during the setup phase; the resources remain dedicated for the entire duration of data transfer until the teardown phase. • Circuit switching is wasteful for data communications as exchange of short burst of data is involved • Packet switching takes advantage of data burstiness by allocating resources on demand. • Benefits of packet switching are: • interleaving bursts from many users to maximise the use of the shared network • helps in detection and recovery of transmission errors • gives fair access for a shared connection between many computers • improves transmission time

  7. Packet Switching Concepts • Store and forward • each switch receives packets, queues them in its memory and then sends them out when possible (i.e. when the trunk is available) • many computers can send packets simultaneously • Packet switched networks use a form of statistical TDM

  8. Packet Forwarding Methods • Connectionless (Datagram) • adds a destination and sequence number to each packet • individual packets can follow different routes • packets reassembled at destination (by using their sequence numbers) • simpler implementation with less overhead & delay • Connection Oriented (Virtual Circuit (VC)) • establishes an end-to-end circuit between the sender and receiver (before the packets are sent) • all packets for that transmission take the same route over the virtual circuit established • same physical circuit can carry many VCs • reliable service, ease of accounting, problem notification & isolation

  9. WAN Addressing • A WAN technology defines a frame format and assigns addresses to its attached networking devices • Addressing is hierarchical, e.g. • first part identifies site or location • second part identifies host or computer at the site

  10. Next Hop Forwarding • Packet switch needs not have complete information of the whole network. Only knowledge of how to reach the next switch (next hop) is held in the routing table – reduces memory requirement • From the destination address, a packet switch determines whether it is for local ports or another packet switch – allows fast and efficient routing decisions • Source independence • next hop to destination does not depend on source of packets Routing table in a datagram network

  11. Routing Table - Examples • Hierarchical addresses simplify routing • smaller routing table • more efficient look up

  12. Virtual Circuit Networks • A virtual circuit network is a cross between a circuit switched and a datagram network. It has some characteristics of both. all packets belonging to the same source and destination pair travel the same path; but packets may arrive at the destination with different delays if resource allocation is on demand. Source-to-destination data transfer in a virtual-circuit network

  13. Addresses and Connection Identifiers • Connection identifiers may be used instead of full addresses • For example, ATM: • 424 bits packets (53 octets) • 160 bits for addresses • 24 bits for connection identifiers • connection identifier local significant only • shorter as compared to the full address

  14. Permanent and Switched Connections • Permanent connection • established manually • held in non-volatile memory - persistent • Switched connection • established when needed

  15. WANs and Graphs • A WAN can be modelled as a graph • nodes and edges

  16. Default Route • A routing table can be further simplified by including (at most) one default route

  17. Routing in a WAN • Large WANs use interior (backbone) switches and exterior (edge) switches • Their routing tables must guarantee the following: • universal routing i.e., there must be a next hop for every possible destination • optimal routes i.e., the next hop must point to the “shortest path” to the destination Popular routing protocols

  18. Routing Table Computation • Manual computation is not feasible for large networks, automatic generation is the solution • Static routing • program computes and installs routes when a switch boots; these routes do not change • Dynamic routing • program builds an initial table whenthe switch boots; this is altered as network condition changes

  19. Link State Routing • Each switch shares its knowledge of its neighbourhood with every other switches in the network. The algorithm works as follows: • Instead of sending its entire routing table, a switch sends information about its neighbourhood only. • Each switch sends this information to every other switch on the network, not just its neighbours. Every switch that receives the information packet sends copies to all its neighbours. Finally, every switch will receive a copy of the same information. • Each switch sends out information about the neighbours when there is a change in the network. • Each switch then applies Djikstra’s algorithm to its link state database

  20. Computing the Shortest Path • WAN modelled as nodes and edges in a graph • Dijkstra’s algorithm – find the distance from a source node to each of the other nodes in a graph • Run this for each switch and create next hop routing table as part of the process • “Distance” represented by weights (costs) on edges • indication of the desirability of sending traffic over that link, e.g. hop count, capacity, delay and traffic • problem is to find the lowest cost (shortest) path between any two nodes

  21. Dijkstra’s Algorithm • Data structure to store information about the graph (nodes and edges) • Integer labels for the nodes [1, 2, ….n] • Three data structures: • current distance to each node - array - D[1, 2,…n] • next hop for each node - array - R[1, 2…n] • set of remaining nodes - linked list - S • Weight (i,j) function (infinity if no edge)

  22. Given: a graph with nonnegative weight assigned to each edge and a designated source node Compute: the shortest distance from the source node to each other node and a next hop routing table Method: Initialise the sets S to contain all nodes except the source Initialise D so the D[u] = weight(source, u) if there is an edge from the source to u and infinity otherwise Initialise R so that R[v] = v if there is an edge from the source to v and zero otherwise

  23. while ( set S is not empty ) { choose a node u from S such that D[u] is minimum if ( D[u] is infinity ) { error: no path exists to nodes in S; quit } delete u from set S for each node v such that (u,v) is an edge { if ( v still in S ) { c = D[u] + weight (u,v); if ( c < D[v] { D[v] = c; R[v] = R[u]; } } } }

  24. Distance Vector Routing • Each switch periodically shares its knowledge about the entire network with its neighbours. The algorithm works as follows: • Each switch collects information about the network and sends this knowledge to its neighbours. At the outset, this information may be sparse. How much it knows, however is unimportant. It sends whatever it has. • It send its knowledge to only those switches that have direct links. This information is received and used by each neighbouring switch to update its knowledge about the network. • The information sharing happens at regular intervals, e.g. every 30 secs and it occurs whether or not the network has changed since the last exchange.

  25. Distance Vector Algorithm Given: a local routing table, a weight for each link that connects to another switch and an incoming routing message Compute: an updated routing table Method: maintain a distance field in each routing table entry initialise routing table with a single entry that has the destination equal to the local packet switch, the next hop unused and the distance set to zero

  26. repeat forever { wait for the next routing message to arrive over the network; let the sender be switch N for each entry in the message { let V be the destination in the entry and D the distance compute C as D plus the weight of the link over which the message arrived examine and update the local routing table { if ( no route exists to V ) { add an entry to the local table for V with next hop N and distance C } else if ( a route exists with next hop N) { replace existing distance with C } else if ( route exists with distance > C ) change next hop to N and distance to C } } }

  27. Distance Vector Routing Initialization of tables in distance vector routing

  28. Distance Vector Routing Updating in distance vector routing

  29. Distance Vector Routing Routing tables after two updates

  30. Performance Characteristics • Delay • time for one bit to travel across the network • may vary with location on the network • interested in maximum, average and variation • results from propagation delays, switching delays, access delays and queuing delays • Throughput • rate at which data can be sent in bits per second (bps) into a network • hardware bandwidth vs. effective throughput

  31. Relating Delay to Utilization • Delay and throughput are related due to congestion (Queuing Theory) D0 D = ----------- ( 1 – U ) D0 = delay when idle, U = utilisation, D = current delay

  32. Transmission and Propagation • Performance of media can be measured in bandwidth, propagation speed, propagation time • Throughput: How fast data can pass through a point in the medium • Propagation speed: The distance a signal (or a bit) can travel through a medium in one second

  33. Delay-Bandwidth Product • Delay-bandwidth product • the volume of data that can be present on the network, i.e. in transit at any one time • for good performance, the receiver’s window must be at least as large as the bandwidth-delay product • Jitter • delay variation between packets • important for time critical applications • jitter must be kept small to ensure quality

  34. Example WAN Technologies Read Comer’s book chapter on WAN Technologies and Dynamic Routing • ARPANET • X.25 • Frame Relay • SMDS • ATM

  35. Summary • WAN can span arbitrary distances and interconnect arbitrarily many computers • WAN uses packet switches and point to point connections • Packet switches use routing tables and store-and-forward operation to deliver packets to destination • Hierarchical addressing and default routing are used for efficient table lookup • Graph algorithms can be used to compute routing tables • Many WAN technologies exist

  36. Acknowledgements Most lecture slides used in this presentation are adopted from the same module taught in Nottingham, UK Campus, with addition of diagrams from the reference texts by Douglas E. Comer and A. Forouzan.

More Related