Part 4. Wide Area Networks (WAN)
|
|
- Anthony Harris
- 5 years ago
- Views:
Transcription
1 Part 4 Wide Area Networks (WAN)
2 Wide Area Networks (WAN) Network spread over a large geographical area All machines in a network may not be directly connected to each other due to large number geographically far apart Transmission done by a network of switched nodes Switched Network
3 Switched Networks End devices or stations devices that actually wants to communicate (ex. a PC, phone) Communication network collection of nodes and connections Stations communicate using the communication network Data is switched from node to node until it reaches destination station Intermediate nodes not concerned with content of data
4 Simple Switched Network
5 Simple Switched Network Communication Network Node provides switching facility (routing) Network Station end node (source & destination) Communication Network Communication is achieved by transmitting data from source to destination through a network of switching nodes
6 Used to connect geographically distributed machines and networks into a single cohesive network Two key switching techniques Circuit switching (mostly for phone networks) Packet switching (used in data networks)
7 Circuit Switching Dedicated communication path between two stations Three phases Establish signaling to set up path Transfer - transfer data, connection maintained Disconnect signaling to tear down connection Must have switching capacity and channel capacity to establish connection Needs to chose a path - routing Example Public Telephone Network
8 Advantages Circuit Switching (contd.) once connected, transfer is fast (no routing needed after connection) Disadvantages Inefficient Channel capacity dedicated for duration of connection If no data to be transmitted, capacity wasted Set up (connection) takes time
9 Packet Switching Data are transmitted in short messages called packets (maximum packet size is defined) A dedicated connection between the two end-nodes is not maintained Longer messages broken up into smaller packets Each packet = data + control info (header) control info usually contains routing info + other things Intermediate nodes buffer and then forward packets (store and forward) A node-to-node link can be dynamically shared by many packets
10 Use of Packets
11 Packet Switching (contd.) Datagram approach Each packet treated independently Packets may follow different paths to the destination May arrive out-of-order or get lost Intermediate nodes need to decide where to forward packets (routing) Up to receiver to re-order packets and recover missing packets
12 Datagram Example
13 Packet Switching (contd.) Virtual Circuit approach Preplanned route established before any packets sent Call request and call accept packets establish connection (handshaking) [Similar to circuit switching] Each packet contains a virtual circuit identifier instead of destination address No routing decisions required for individual packets Clear request packet is used to drop circuit Not a dedicated path (unlike circuit switching, the links in a path may be shared between different virtual circuits)
14 Virtual Circuit Example
15 Virtual Circuits vs. Datagrams Virtual circuits Network can provide sequencing and error control Packets are forwarded more quickly No routing decisions to make Less reliable Loss of a node loses all circuits through that node Datagram No call setup phase Better if few packets More flexible and reliable Routing can be used to avoid congested parts of the network, loss of a single node does not drop all packets
16 Advantages of Packet Switching Line efficiency Single node to node link can be shared by many packets over time Packets queued and transmitted as fast as possible Packets are accepted even when network is busy But delivery may slow down Priorities can be used
17 Effect of Packet Size
18 Routing in Switched Networks
19 Routing The process of sending a message from a source to a destination through intermediate nodes A route a path from the source to the destination Needed for any network during connection establishment for circuit switching/virtual circuits whenever a packet arrives at a switching node (router) for datagrams we will cover mostly routing for packet switching networks
20 Routing Algorithm/Protocol Finds one or more routes between a source and a destination and send packets through it Usually stores routes found in routing table for future use Table needs to be updated if existing routes change or new routes found Algorithms differ in how are routes found, which route is selected, when and how are routes updated
21 Routing Protocol Goals Correctness should find a route Optimal - compute best route Efficiency/Low overhead - should not send too many messages to find route Robust - can handle failures like link failure, node crashes Rapid convergence when network conditions change
22 Performance Metrics Used for selection of a route among multiple possible routes Some examples Minimum number of hops Least cost cost can be based on different things like traffic carried, types of links, available bandwidth etc. Delay, throughput
23 When/Where is Routing Decision When? Taken? Per packet or virtual circuit establishment? Where? Distributed made by each node as it receives a packet Centralized one node decides routes for everybody Source decided at source of packet, complete path to destination put in packet (source routing)
24 Routing Strategies Fixed/Static Flooding Random Adaptive/Dynamic
25 Fixed/Static Routing Single permanent route for each source to destination pair Routing table created & updated manually Table is fixed unless manually changed again No dynamic update when network conditions change (for ex., a link goes down, or a shorter path comes up, or some link becomes congested) Fine for very small networks Not good for larger networks that interconnect larger no. of nodes
26 Fixed Routing Tables
27 Flooding No network info required Packet sent by node to every neighbor Incoming packets retransmitted on every link except incoming link Eventually a number of copies will arrive at destination Each packet is uniquely numbered so duplicates can be discarded Nodes can remember packets already forwarded to keep network load in bounds Can work around failed links/nodes
28 Flooding Example
29 Properties of Flooding All possible routes are tried Very robust At least one packet will have taken minimum cost route (for ex., min hop count) Can be used to set up virtual circuit All nodes are visited Useful to distribute information But no routes remembered (no routing table) Too many copies of a packet may be sent
30 Random Routing Node selects one outgoing path for retransmission of incoming packet Selection can be random or round robin Can select outgoing path based on probability calculation No network info needed Route followed is typically not least cost nor minimum hop No routes remembered
31 Adaptive/Dynamic Routing Used by almost all packet switching networks Routing decisions change as conditions on the network change Failure Congestion Requires info about network Decisions more complex Tradeoff between quality of network info and overhead Reacting too quickly can cause oscillation Reacting too slowly can make routes obsolete
32 Routes saved in routing tables Routers communicate among themselves to update routing tables dynamically when network conditions change No manual intervention needed normally
33 Adaptive Routing (contd.) Advantages Improved performance Aid congestion control, fault-tolerance Disadvantages Complex system Additional messages needed to maintain routing tables more overhead
34 Classification of Adaptive Routing Strategies Based on information sources Local (isolated) Route to outgoing link with shortest queue Can include bias for each destination Rarely used - do not make use of easily available info Adjacent nodes All nodes
35 Isolated Adaptive Routing
36 Distance Vector Routing Each node keeps track of its least cost path from all nodes in the network (the distance vector) This entire information is periodically sent to all neighbors, whether or not the information has changed since the last send If no information received from a neighbor within a time, that link is assumed to be down Local information updated based on information received from neighbor If at node x, d(x, y) > d(x, z) + d(z, y), where z is a neighbor of x, then update d(x, y) Always trust information from z if z is the next hop Basically Bellman-Ford shortest path algorithm
37 Slow convergence Problems If a network becomes inaccessible, it may take a long time for all other routing tables to know this Too much overheads updates sent even if no change in routing table Routing loops may take a long time to be detected (counting to infinity problem)
38 Counting to Infinity Problem
39 Link State Protocols Each node sends only information about its neighbors (who and cost) to all nodes in the network This information sent to all nodes by Flooding This information is sent only when a change is detected (for ex., a broken link, a crashed neighbor) Finally each node has complete information about the network applies some least cost algorithm (ex. Dijkstra s) to compute least cost route to all other nodes
40 Bellman-Ford Algorithm Definitions Find shortest paths from given node subject to constraint that paths contain at most one link Find the shortest paths with a constraint of paths of at most two links And so on s = source node w(i, j) = link cost from node i to node j w(i, i) = 0 w(i, j) = if the two nodes are not directly connected w(i, j) 0 if the two nodes are directly connected h = maximum number of links in path at current stage of the algorithm L h (n) = cost of least-cost path from s to n under constraint of no more than h links
41 Bellman-Ford Algorithm Step 1 [Initialization] L 0 (n) =, for all n s L h (s) = 0, for all h Step 2 [Update] For each successive h 0 For each n s, compute L h+1 (n)= min j[l h (j)+w(j,n)] Connect n with predecessor node j that achieves minimum Eliminate any connection of n with different predecessor node formed during an earlier iteration Path from s to n terminates with link from j to n
42 Bellman-Ford Algorithm Notes For each iteration of step 2 with h=k and for each destination node n, algorithm compares paths from s to n of length K=1 with path from previous iteration If previous path shorter it is retained Otherwise new path is defined
43 Comparison of Dijkstra And Bellman-Ford Results from two algorithms agree Information gathered Bellman-Ford Calculation for node n involves knowledge of link cost to all neighboring nodes plus total cost to each neighbor from s Each node can maintain set of costs and paths for every other node Can exchange information with direct neighbors Can update costs and paths based on information from neighbors and knowledge of link costs Dijkstra Each node needs complete topology Must know link costs of all links in network Must exchange information with all other nodes
44 Network Layer Protocols: IPv4 (Internet Protocol Version 4)
45 Internet Protocol Version 4 (IPv4) Network layer protocol in TCP/IP suite Defined originally in RFC 791 (what is a RFC?) Connectionless (I.e., no explicit connection setup/termination phase before/after data transfer), datagram-oriented Message broken up into packets, packets switched between routers. Header attached to each packet (IP header). Main issues handled: Routing Fragmentation and reassembly Unreliable, best-effort service. Packets can be lost, duplicated, come out-of-sequence. Encapsulated in data link layer frame (for ex. Ethernet)
46 IP Address Required to specify source and destination of packet Each host connected to the Internet is identified by a unique IP address (actually, each network card on a host has an IP address) An IP address is a 32-bit quantity. Expressed as W.X.Y.Z, where W, X, Y, Z are the four octets Consists of two logical parts: A network number (used for routing) A host number (identifying host within a net) This partition defines the IP address classes
47 IP Address Classes There are five defined IP address classes. Class A UNICAST Class B UNICAST Class C UNICAST Class D MULTICAST Class E RESERVED There are some special-purpose IP addresses also.
48 Class A Address Range High-order bits 0 Network bits 7 Host bits 24 B C D E
49 CLASS A 0 Network Host Host Host No. of networks: = 127 No. of hosts/network: = 16,777,214 CLASS B 10 Network Network Host Host No. of networks: = 16,383 No. of hosts/network: = 65,534
50 CLASS C 110 Network Network Network Host No. of networks: = 2,097,151 No. of hosts/network: = 254
51 Problems with Class Assignments Main problem with Class assignments: Wastage of IP addresses (organizations may not need a full class) Solution Control allocation centrally Controlled by IANA and its regional agencies ( Allocate only what is necessary (or close to it)
52 IP Subnetting Subnet (or subnetwork) A subset of a class A, B, or C network. Breaks host part into subnet part and host part Allows better address space allocation Allows better network administration and management Reduces route table size in non-local routers (will discuss later)
53 Uses network masks (subnet mask) In binary, the mask is a series of contiguous 1 s followed by a series of contiguous 0 s. The 1 s portion identifies the network portion of the address (see example) The 0 s portion identifies the host portion of the address in the original To check if two IP addresses belong to the same subnet, the bit-wise AND of the two addresses with the netmask must be the same.
54 An Example Network mask is applied to a class C network Mask = Address of 1 st host on this subnet = (0 is special) Address of last host on this network = (15 = 1111 is special) Next subnet will start from Addresses and are in the same subnet by the previous rule Addresses and are in different subnets by the previous rule Note: original subnet specs (RFC 950) do not allow subnets with all 0 s and all 1 s (so and subnets cannot be used). Some current systems allow with suitable configuration. Be careful about interoperability.
55 Natural Masks Class A, B and C addresses each have natural masks, which gets defined from the definition of the classes themselves. Class A :: natural mask is Class B :: natural mask is Class C :: natural mask is
56 Some Special IP Addresses Special source addresses as part of an initialization procedure This host on this network NET = 0, HostID = 0 Specified host on this network NET = 0, HostID = this host Loopback address Loopback address - allows applications on same host to communicate using TCP/IP Anything starting with 127., usually
57 Special IP Output Addresses Limited Broadcast - Typically used for initialization Only appears on local cable/collision domain NETID = all 1 s, HostID = all 1 s Net-directed Broadcast (to netid) Forwarded via router NETID = netid, HostID = all 1 s Subnet-directed Broadcast (to netid, subnetid) NETID = netid, SubnetID = subnetid, HostID = all 1 s All subnets-directed broadcast for netid Most routers don t support this - use Multicast instead to do the same thing NETID = netid, SubnetID = all 1 s, HostID = all 1 s
58 Routing Basics Each subnet has a router (gateway) Has at least two NICs (multihomed), one for the subnet, and others connected to higher level routers forwards to higher level router using routing table When IP packet comes, destination address checked with routing table to find next hop s IP address Questions: Route by host or by network? Routing table: how to build and maintain it? Monolithic routing table structure/maintenance method across the Internet?
59 Routing by the Network Routing by host address explodes routing table at higher level routers Subnetting allowed better management of IP space, but by itself, still needs one entry per subnet at higher level routers CIDR (Classless Inter Domain Routing) Combine contiguous networks into a larger network for the purpose of saving IP space and reducing routing table size
60 Example Suppose Company A needs IP for 1000 machines Assign 4 contiguous Class C address blocks , , , (last 8 bits 0) Supernet: Address : Netmask: (last 10 bits 0) Also written as: /22 22 denotes size of network portion. Also called prefix. Routing done by prefix
61 Advantage Routing table at higher levels will have only 1 entry for the 4 networks In classful addressing (that did not recognize masks), would have required 4 entries for the 4 networks Possible only due to contiguous allocation, so that higher level routers can just send it to lower level routers (in this case company A s router) using one entry only. Lower level router will distinguish.
62 Routing table at all higher level routers: /22 - send to host X (next hop on way to Company A s router RA) Routing table at RA: /24 send to router of first net /24 send to router of second net /24 send to router of third net /24 send to router of fourth net Routers always do longest prefix match. If two entries match, longest match is taken. Example: two entries in table: one for /16 and one for /24. If address is , second entry will be used even though it matches both.
63 So routing table will contain networks (in prefix form or explicit net/mask form) and maybe some hosts (32 bit prefix), and a next hop address for each of them, plus some other information Usually a routing cache is also there. Cache contains recent routing decisions. Destination address first looked up in cache. If not found, longest-prefix match done in routing table. How is the routing table built and maintained? Distance vector/link state based protocols Hierarchical, will discuss at end if time permits
64 Routing Table Example - 1 Destination Gateway Genmask Iface eth eth lo eth0
65 Routing Table Example - 2 ========================================================= Interface List 0x1... MS TCP Loopback interface 0x ba c Realtek RTL8139 Family PCI Fast Ethernet NIC ========================================================= Active Routes: Network Destination Netmask Gateway Interface Default Gateway: ============================================================
66 Basic Data Transfer Use subnet mask to find if source and destination IP in same subnet If yes Can send using broadcast MAC address All nodes on subnet receive it, pass it up till IP layer, only destination m/c accepts (based on destination IP) Can optimize if destination m/c MAC address known If not, send to gateway, gateway will route using routing table
67 IP Reframing IP packet sent from A= to B= through gateway C= Since A sends to C first, should A change the destination address in the packet to (address of C)?
68 NO!!! IP address is for end-to-end communication, C will need it to know that the packet is for B Set the MAC address to that of C so that the packet can go to C C will then set the MAC address of the packet to that of B But how does A know the MAC address of C? Through another protocol, ARP
69 ARP (Address Resolution Protocol) Provides IP to Hardware address mapping ARP packet encapsulated in data link layer frame, ex., Ethernet Type field in frame specifies it is an ARP packet Broadcast IP for which hardware address is needed to all nodes, destination picks it up and replies ARP cache maintained for faster mapping
70 ARP Packet Format
71 RARP Opposite of ARP Gets IP address given Hardware Address Used during bootup by diskless workstations etc. to initialize IP
72 IP Header
73 What s Stored in an IPv4 Header? Version - 4 bit field specifying the IP version (4) Header length - specified in 32 bit words. Range is words, or bytes Type of Service (8 bits) 3 bit precedence field (ignored today), one must be zero field 4-bit field specifying desired service qualities. Minimize Delay Maximum Throughput Maximize Reliability Minimize Monetary Cost Only one bit can be set. None set is normal service Largely ignored by routers & IP implementations
74 IPv4 Header (contd.) Datagram length - header + data, in bytes Identification Unique value, used with flags & fragment offset if a message must be fragmented Flags, Fragment offset discussed later Time to live field - upper limit on the number of hops a message can go before being dropped Protocol - identifies higher layer protocol like TCP, UDP etc. Header checksum - checksum of just the header Source address Destination address Options
75 Options Field Can specify a variable number of options, each of the form Flag 0 means the option is NOT to be copied to each fragment if the datagram is fragmented, 1 means to be copied Class 0 (Normal), 2 (debugging)
76 . Option Number 0 - the end of the option list, 1 - No Operation 2 - Security 3 - Loose Source Routing 4 - Internet Timestamp 7 - Record Route 8 - Stream ID 9 - Strict Source Routing Option-Length - variable and not present for the NOP and the end of Option List Option-Data - variable and not present for the NOP and the end of Option List. See RFC 791 for the detail on the data content for each of the Options Overall, options are not much used for internet communication
77 IP Fragmentation Maximum Transfer Unit (MTU) maximum size of a physical frame (ex for Ethernet) When a router transits a packet that is too large for the MTU of the outgoing link, the packet is fragmented Fragmented packets are not reassembled until they reach their final destination Fragments may also be fragmented Typically, if any fragment is lost, a router will discard all fragments. Routers usually only discover fragment loss if they drop the fragment themselves. The endpoint assumes fragments are lost after seconds
78 Packets vs. Datagrams An IP datagram is the unit of end-to-end transmission at the IP layer (before fragmentation & after reassembly) A packet is the unit of data passed between the IP layer and the link layer. A packet can be a complete IP datagram or a fragment
79 Identifying and Ordering Fragments Fragments are identified using the datagram identification field in the header All fragments of a datagram has the same identification field value Sequencing of fragments done using the Fragment Offset field Contains offset from beginning of data carried by this fragment Last fragment detected by More Fragment field I bit of the Flags field in the header Set to 1 on all but the last fragment of a datagram; set to 0 for the last fragment
80 IP Fragmentation IP Header Payload IP Header Payload More Fragements is Set IP Header Payload IP Header Payload More Fragements is NOT Set
81 IP Fragmentation - Identifying IP Header Information Payload IP Header Payload Ver HdrLth Type of Svc Total length (in bytes) 16-bit Packet Identification Flags Fragment Offset Time To Live Protocol Header Checksum Source IP Address Destination IP Address... (options, if any)...
82 IP Fragmentation IP Header Payload IP Header Payload Ver HdrLth Type of Svc Total length (in bytes) 16-bit Packet Identification Flags Fragment Offset Time To Live Protocol Header Checksum Source IP Address Destination IP Address... (options, if any)...
83 IP Fragmentation Of Non-Final IP Header Fragments Payload IP Header Payload More Fragements is Set IP Header Payload IP Header Payload IP Header Payload
84 IP Fragmentation Of Final Fragment IP Header Payload IP Header Payload IP Header Payload More Fragements is Set More Fragements is NOT Set IP Header IP Header Payload IP Header
85 Don t Fragment One of the IPv4 header flags specifies that this packet should not be fragmented 16-bit Packet Identification Fragment Offset Reserved Don t Fragment More Fragments
86 Internet Control Message Protocol (ICMP)
87 ICMP (Internet Control Message Protocol) Required protocol with IP Used for reporting errors back to the source of an IP packet or for monitoring/measurement/feedback When a node detects an error, an ICMP packet is sent back to the source Only error reporting, no error correction. Correction is left to the source node. RFC 792 and RFC 1122 (lists updated types)
88 ICMP Transmission ICMP packet contains ICMP header and may contain other information depending on type of message ICMP packet carried in data portion of an IP packet IP packet is routed normally back to the source Only difference: No ICMP packet is generated on error in IP packet carrying ICMP ICMP is not a transport layer protocol, it is a required support protocol at IP layer
89 ICMP Header Format 8-bit Type field 8-bit Code field 16-bit Checksum
90 ICMP Message Types ICMP Message Type Echo reply 0 Destination unreachable 3 Source quench 4 Route redirect 5 Echo request 8 Time exceeded 11 Parameter problem 12 Timestamp request 13 Timestamp reply 14 Address mask request 17 Address mask reply 18
91 Echo Request/Reply To see if a destination is up and reachable Identifier/Sequence no. used to match request with reply Data may be sent in request, same data returned in reply, matched to see if destination is up Basis of ping tool 8 16 Type (8/0) Code (0) Checksum Identifier Sequence No. Optional Data
92 Destination Unreachable Sent by router when unable to forward or deliver a packet 8 16 Type (3) Code (0-12) Checksum Unused (must be 0) IP header + first 64 bits of IP packet
93 Example Code Values Code Meaning 0 network unreachable 1 host unreachable 2 protocol unreachable 3 port unreachable 4 fragmentation needed and DF set 5 source route failed 6 destination network unknown 7 destination host unknown
94 Source Quench Report congestion to source Sent when packet is dropped due to buffer overflow Source should reduce flow 8 16 Type (4) Code (0) Checksum Unused (must be 0) IP header + first 64 bits of IP packet
95 Route Redirect Used to let source know a better route to use for the destination address Packet is still forwarded 8 16 Type (5) Code (0-3) Checksum new router address IP header + first 64 bits of IP packet
96 Time Exceeded for Datagram Used to detect circular or very long routes Sent when router discard packet because hop count = 0 (code 0) or fragment reassembly timer expires (code 1) Basis of traceroute tool 8 16 Type (11) Code (0-1) Checksum Unused (must be 0) IP header + first 64 bits of IP packet
97 Parameter Problem Sent for any other errors that cause packet to be discarded (ex., incorrect option field) 8 16 Type (12) Code (0-1) Checksum Pointer Unused (must be 0) IP header + first 64 bits of IP packet
98 Timestamp Request/Reply May be used for clock synchronization 8 16 Type (13/14) Code (0) Checksum Identifier Sequence Number Originate Timestamp Receive Timestamp Transmit Timestamp
99 Address Mask Request/Reply May be used to obtain subnet mask of local network at boot 8 16 Type (17/18) Code (0) Checksum Identifier Sequence No Address Mask
100 Transport Layer Protocols: TCP (Transmission Control Protocol)
101 Possible Transport Layer Functions Multiplex/Demultiplex traffic for different applications Establish and maintain end-to-end connections Guarantee reliable, inorder end-to-end transfer Provide end-to-end flow control Congestion control A transport layer protocol may implement a subset of the above Lowest level end-to-end protocol Header generated by sender is interpreted only by the destination, not by routers Routers view transport header as part of the payload/data
102 Transmission Control Protocol (TCP) End-to-end, reliable protocol Connection-oriented, stream-oriented, full duplex Connection-oriented Three-way handshake to establish connection Explicit connection termination Flow control (Sliding Window based) Error detection and control, sequencing Congestion Control Specified originally in RFC 793, many other related RFCs are there
103 Port, Endpoint, and Connection Port A 16 bit integer used to identify an application using Endpoint A 2-tuple <host, port> host is an IP address Commonly called a socket Connection Defined by two endpoints Two connections will have at least one endpoint different (but can have one endpoint same) Messages are demultiplexed based on connections, not ports
104 Classification of Ports Well-known/reserved ports Ports upto 1023 Use requires registration with ICANN / IANA Normally used for protocols with wide applicability Examples ftp 21,20, telnet 23 etc. Registered ports Ports Used to avoid port collisions between user-level applications developed independently when installed on the same machine Registration in ICANN registries is voluntary, though recommended Dynamic or private ports ports Can be used by anyone for anything See RFC 4340 for more details
105 Stream, Segment, and Sequence No. Data viewed as a stream, i.e., a sequence of bytes Segment the unit of transfer between TCP s/w on two machines The stream of bytes is divided into segments, each segment is given a TCP header, and transmitted Usually 1 segment is encapsulated in 1 IP datagram Segments may not contain any data Ex segments used to establish/terminate connections, send acks etc. Sequence No. used to specify position within the stream Each TCP segment will contain a 32-bit sequence no. to identify its position in the stream
106 TCP Header
107 The TCP Flags in Header U R G A C K P S H R S T S Y N F I N URG - urgent pointer is valid ACK - the acknowledgment number is valid PSH - The receiver should pass this data to the application as soon as possible ( push ) RST - reset the connection SYN - synchronize the sequence numbers to initiate a connection FIN - sender is finished sending data
108 Basic Data Transfer Connection established All transmission involves TCP segments Sender sends TCP segments with data Each segment contains a sequence number (position of data in the stream), source and destination port Receiver sends acknowledgments by sending another TCP segment Can be an acknowledgements segment (ACK flag set and a valid acknowledgement no. field) with no data (how to know this?) Acknowledgements can be piggybacked on TCP segments carrying data in the other direction Acknowledgement specifies next sequence no. the receiver expects Cumulative positive acknowledgement, no NAK The above repeats until connection terminated
109 Connection Establishment Purpose Both sides should know that both sides are ready for data transfer Each side should know the other side s Initial Sequence Number (ISN) the starting sequence number of the first byte in the stream that will be sent First byte address cannot always start at 0 or 1, there are problems of confusion between old and new connections Can negotiate certain TCP options also Normally done through Three-Way Handshake Three messages exchanged to establish connection 2 SYN segments (segment with SYN Flag set, and a valid sequence no.) 1 SYN + ACK segment (segment with both SYN and ACK flags set, and valid sequence no. and acknowledgement no. fields)
110 Three-Way Handshake The client sends a SYN segment specifying the port number of the server and the client s ISN The server responds with a SYN + ACK segment Sequence No. field contains server s ISN Server acknowledges the client SYN using client ISN+1 in the acknowledgement no. field. The client acknowledges the SYN from the server using an ACK segment with the server s ISN+1 in the acknowledgement no. field The side sending the first SYN is said to perform an active open. The other side performs a passive open. However, after a connection is established, it is fullduplex comm. with no master/slave
111 SYN: ISN_C Client Server ACK: ISN_C+1 SYN: ISN_S ACK: ISN_S+1
112 Normal Connection Termination Either side can initiate termination Send FIN segment (FIN flag set) Indicates that FIN sender is not going to send any more data Other side can continue sending data Half open connection Must continue to acknowledge Acknowledging FIN FIN receiver must acknowledge the FIN segment by sending an ACK segment (ACK flag set) with acknowledgement no. = FIN segment sequence number + 1 The above repeats when the other side wants to close connection
113 A B FIN, SeqA ACK, SeqA+1 Data ACK FIN, SeqB ACK, SeqB+1
114 TCP Flow Control TCP uses a sliding window protocol without selective or negative acknowledgments. Selective acknowledgments would let the protocol say it s missing a range of bytes. TCP can only say that it has received up to byte N. The protocol has no way to specify a negative acknowledgment. It can only say what has been received 0 Next ACK
115 Sliding Window Based Flow Control Sender maintains a window of size n and start of window X Sender can send up to n bytes starting from some byte X without receiving an acknowledgement When the first p bytes of data are acknowledged then the window slides forward by p bytes to X+p. Sender can now send n bytes starting from X+p Window size determines how much unacknowledged data can the sender send
116 Sender Side Window window Sent and acked Sent but not acked Not yet sent Next to be sent Must retain for possible retransmission
117 Problem Acknowledgment may be sent immediately by receiver, but receiver can delete acknowledged data only after the data has been delivered to the application So, depending on how fast the application is reading the data, the receiver s window size may change
118 Receiver Side Window Receive buffer Acked but not delivered to user Not yet acked window
119 Solution Receiver tells sender what is the current window size in every segment it transmits to the sender (in Window field of header) Sender uses this current window size instead of a fixed value Window size (also called Advertised window) is continuously changing, = current free buffer space at receiver Can go to zero - sender not allowed to send anything! Naïve implementations can cause silly window syndrome
120 Ensuring Reliable, Inorder Transfer Checksum (mostly) guarantees end-to-end data integrity Sequence numbers detect packet sequencing problems: Duplicate: ignore Reordered: reorder or drop Lost: retransmit Lost segments detected by sender. Use timeout to detect lack of acknowledgment Retransmission requires that sender keep copy of the data. Copy is discarded when ack is received
121 Ensuring Reliability Keeps separate timer for each unacknowledged segment Uses retransmissions of segments whose timers expire Retransmission time-out depends on round-trip delay round-trip delay varies based on path followed, network condition etc. So how to set? solution - estimate RTT dynamically
122 Estimating Round-trip Delay Data Sample Ack Every Data/Ack pair gives new RTT estimate Can get lots of short-term fluctuations
123 TCP Round-trip Estimator Round trip times estimated as a moving average: New RTT = α (old RTT) + (1 - α) (new sample) Retransmit timer set to β RTT Typically, α = , β = 2 originally Problem: If a segment is retransmitted, and an ack for it is received, is it an ack for the retransmitted frame or the original frame? What RTT sample value to take? Solution Karn s algorithm
124 Computing TCP Checksum Prepends a psuedo-header before the TCP segment Pads octets of zeros to make (psuedo-header + TCP segment + pad length) multiple of 16 Checksum computed on this entire thing Psuedo-header and pad octets are not transmitted, just used for calculating the checksum (then why have it?) Receiver will do the same and compare checksum
125 TCP psuedo-header Source IP address Destination IP address Zero Protocol TCP Length Protocol = 6 (value for TCP in protocol field of IP datagram) TCP Length = length of TCP segment incl. TCP header (but not incl. psuedo-header and pads, it is computed (how?))
126 Out of Band Data Sometimes there is need to send urgent data that needs to be delivered to the application out of turn Set URG code bit to indicate presence of outof-band data in segment Set URGENT pointer to position in segment where urgent data ends
127 TCP State Diagram
128
129
130 Transport Layer Protocols: UDP (User Datagram Protocol)
131 User Datagram Protocol (UDP) Transport layer protocol like TCP, notion of port to identify application layer service Provides multiplexing/demultiplexing of applications Connectionless (no connection setup/termination), unreliable No flow control, error control Each datagram sent separately Simple, fast, but unreliable Details in RFC 768
132 UDP Message Format Source Port Destination Port Length Checksum Data
133
Vorlesung Kommunikationsnetze
Picture 15 13 Vorlesung Kommunikationsnetze Prof. Dr. H. P. Großmann mit B. Wiegel sowie A. Schmeiser und M. Rabel Sommersemester 2009 Institut für Organisation und Management von Informationssystemen
More informationUser Datagram Protocol
Topics Transport Layer TCP s three-way handshake TCP s connection termination sequence TCP s TIME_WAIT state TCP and UDP buffering by the socket layer 2 Introduction UDP is a simple, unreliable datagram
More informationUser Datagram Protocol (UDP):
SFWR 4C03: Computer Networks and Computer Security Feb 2-5 2004 Lecturer: Kartik Krishnan Lectures 13-15 User Datagram Protocol (UDP): UDP is a connectionless transport layer protocol: each output operation
More informationRouting in packet-switching networks
Routing in packet-switching networks Circuit switching vs. Packet switching Most of WANs based on circuit or packet switching Circuit switching designed for voice Resources dedicated to a particular call
More informationDongsoo S. Kim Electrical and Computer Engineering Indiana U. Purdue U. Indianapolis
Session 8. TCP/IP Dongsoo S. Kim (dskim@iupui.edu) Electrical and Computer Engineering Indiana U. Purdue U. Indianapolis IP Packet 0 4 8 16 19 31 Version IHL Type of Service Total Length Identification
More informationIP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia
IP - The Internet Protocol Based on the slides of Dr. Jorg Liebeherr, University of Virginia Orientation IP (Internet Protocol) is a Network Layer Protocol. IP: The waist of the hourglass IP is the waist
More informationII. Principles of Computer Communications Network and Transport Layer
II. Principles of Computer Communications Network and Transport Layer A. Internet Protocol (IP) IPv4 Header An IP datagram consists of a header part and a text part. The header has a 20-byte fixed part
More informationInternet Protocols (chapter 18)
Internet Protocols (chapter 18) CSE 3213 Fall 2011 Internetworking Terms 1 TCP/IP Concepts Connectionless Operation Internetworking involves connectionless operation at the level of the Internet Protocol
More informationTCP/IP Networking. Part 4: Network and Transport Layer Protocols
TCP/IP Networking Part 4: Network and Transport Layer Protocols Orientation Application Application protocol Application TCP TCP protocol TCP IP IP protocol IP IP protocol IP IP protocol IP Network Access
More informationECE4110 Internetwork Programming. Introduction and Overview
ECE4110 Internetwork Programming Introduction and Overview 1 EXAMPLE GENERAL NETWORK ALGORITHM Listen to wire Are signals detected Detect a preamble Yes Read Destination Address No data carrying or noise?
More informationEITF25 Internet Techniques and Applications L7: Internet. Stefan Höst
EITF25 Internet Techniques and Applications L7: Internet Stefan Höst What is Internet? Internet consists of a number of networks that exchange data according to traffic agreements. All networks in Internet
More informationIntroduction to Internetworking
Introduction to Internetworking Introductory terms Communications Network Facility that provides data transfer services An internet Collection of communications networks interconnected by bridges and/or
More informationET4254 Communications and Networking 1
Topic 9 Internet Protocols Aims:- basic protocol functions internetworking principles connectionless internetworking IP IPv6 IPSec 1 Protocol Functions have a small set of functions that form basis of
More information05 Transmission Control Protocol (TCP)
SE 4C03 Winter 2003 05 Transmission Control Protocol (TCP) Instructor: W. M. Farmer Revised: 06 February 2003 1 Interprocess Communication Problem: How can a process on one host access a service provided
More informationWilliam Stallings Data and Computer Communications. Chapter 10 Packet Switching
William Stallings Data and Computer Communications Chapter 10 Packet Switching Principles Circuit switching designed for voice Resources dedicated to a particular call Much of the time a data connection
More informationCHAPTER-2 IP CONCEPTS
CHAPTER-2 IP CONCEPTS Page: 1 IP Concepts IP is a very important protocol in modern internetworking; you can't really comprehend modern networking without a good understanding of IP. Unfortunately, IP
More informationCS4700/CS5700 Fundamentals of Computer Networks
CS4700/CS5700 Fundamentals of Computer Networks Lecture 14: TCP Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu Northeastern
More informationNetwork Layer. The Network Layer. Contents Connection-Oriented and Connectionless Service. Recall:
Network Layer The Network Layer Recall: The network layer is responsible for the routing of packets The network layer is responsible for congestion control 1 2 Contents 4.1.1 Connection-Oriented and Connectionless
More informationNetwork Layer. Recall: The network layer is responsible for the routing of packets The network layer is responsible for congestion control
The Network Layer 1 Network Layer Recall: The network layer is responsible for the routing of packets The network layer is responsible for congestion control 2 Contents Connection-Oriented (virtual circuit)
More informationInternet Layers. Physical Layer. Application. Application. Transport. Transport. Network. Network. Network. Network. Link. Link. Link.
Internet Layers Application Application Transport Transport Network Network Network Network Link Link Link Link Ethernet Fiber Optics Physical Layer Wi-Fi ARP requests and responses IP: 192.168.1.1 MAC:
More informationICMP (Internet Control Message Protocol)
Today s Lecture ICMP (Internet Control Message Protocol) Internet Protocols CSC / C 573 I. ICMP Overview II. ICMP rror Reporting III. ICMP Query / Response Messages IV. ICMP Message Processing Fall, 2005
More informationUnit 2.
Unit 2 Unit 2 Topics Covered: 1. PROCESS-TO-PROCESS DELIVERY 1. Client-Server 2. Addressing 2. IANA Ranges 3. Socket Addresses 4. Multiplexing and Demultiplexing 5. Connectionless Versus Connection-Oriented
More informationTSIN02 - Internetworking
Lecture 4: Transport Layer Literature: Forouzan: ch 11-12 2004 Image Coding Group, Linköpings Universitet Lecture 4: Outline Transport layer responsibilities UDP TCP 2 Transport layer in OSI model Figure
More informationTSIN02 - Internetworking
Lecture 4: Transport Layer Literature: Forouzan: ch 11-12 2004 Image Coding Group, Linköpings Universitet Lecture 4: Outline Transport layer responsibilities UDP TCP 2 Transport layer in OSI model Figure
More informationThis Lecture. BUS Computer Facilities Network Management. Switching Network. Simple Switching Network
This Lecture BUS0 - Computer Facilities Network Management Switching networks Circuit switching Packet switching gram approach Virtual circuit approach Routing in switching networks Faculty of Information
More informationIS370 Data Communications and Computer Networks. Chapter 5 : Transport Layer
IS370 Data Communications and Computer Networks Chapter 5 : Transport Layer Instructor : Mr Mourad Benchikh Introduction Transport layer is responsible on process-to-process delivery of the entire message.
More informationTCP /IP Fundamentals Mr. Cantu
TCP /IP Fundamentals Mr. Cantu OSI Model and TCP/IP Model Comparison TCP / IP Protocols (Application Layer) The TCP/IP subprotocols listed in this layer are services that support a number of network functions:
More informationChapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet
Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties
More informationTCP/IP Protocol Suite
TCP/IP Protocol Suite Computer Networks Lecture 5 http://goo.gl/pze5o8 TCP/IP Network protocols used in the Internet also used in today's intranets TCP layer 4 protocol Together with UDP IP - layer 3 protocol
More informationGuide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16
Guide To TCP/IP, Second Edition Chapter 5 Transport Layer TCP/IP Protocols Objectives Understand the key features and functions of the User Datagram Protocol (UDP) Explain the mechanisms that drive segmentation,
More informationLecture 11: IP routing, IP protocols
Lecture 11: IP routing, IP protocols Contents Routing principles Local datagram delivery ICMP Protocol UDP Protocol TCP/IP Protocol Assuring requirements for streaming TPC Building and terminating TCP
More information7. TCP 최양희서울대학교컴퓨터공학부
7. TCP 최양희서울대학교컴퓨터공학부 1 TCP Basics Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 2009 Yanghee Choi
More informationTSIN02 - Internetworking
Lecture 4: Outline Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 RFC? Transport layer introduction UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 The Transport Layer Transport layer
More informationConnection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service
최양희서울대학교컴퓨터공학부 Connection-oriented (virtual circuit) Reliable Transfer Buffered Transfer Unstructured Stream Full Duplex Point-to-point Connection End-to-end service 1 2004 Yanghee Choi 2 Addressing: application
More informationCommunication Networks ( ) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner
Communication Networks (0368-3030) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University Allon Wagner Kurose & Ross, Chapter 4 (5 th ed.) Many slides adapted from: J. Kurose & K. Ross
More informationTSIN02 - Internetworking
TSIN02 - Internetworking Literature: Lecture 4: Transport Layer Forouzan: ch 11-12 Transport layer responsibilities UDP TCP 2004 Image Coding Group, Linköpings Universitet 2 Transport layer in OSI model
More informationSEN366 (SEN374) (Introduction to) Computer Networks
SEN366 (SEN374) (Introduction to) Computer Networks Prof. Dr. Hasan Hüseyin BALIK (12 th Week) The Internet Protocol 12.Outline Principles of Internetworking Internet Protocol Operation Internet Protocol
More informationBasic Idea. Routing. Example. Routing by the Network
Basic Idea Routing Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:
More informationLecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 4 The Network Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Network layer functions Transport packet from sending to receiving hosts Network layer protocols in every
More informationRouting by the Network
Routing Basic Idea Routing table at each router/gateway When IP packet comes, destination address checked with routing table to find next hop address Questions: Route by host or by network? Routing table:
More informationCSC 634: Networks Programming
CSC 634: Networks Programming Lecture 03: Review of Basic Networking Concepts (TCP/UDP) Instructor: Haidar M. Harmanani Recap 7-Layer OSI Model 7 6 5 4 3 2 1 Application Presentation (kinds of compression)
More informationInternetwork Protocols
Internetwork Protocols Background to IP IP, and related protocols Internetworking Terms (1) Communications Network Facility that provides data transfer service An internet Collection of communications
More informationIntroduction to TCP/IP networking
Introduction to TCP/IP networking TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute TCP : Transmission Control Protocol HTTP, FTP, ssh What is an internet? A set
More informationTransport Layer. Gursharan Singh Tatla. Upendra Sharma. 1
Transport Layer Gursharan Singh Tatla mailme@gursharansingh.in Upendra Sharma 1 Introduction The transport layer is the fourth layer from the bottom in the OSI reference model. It is responsible for message
More informationQUIZ: Longest Matching Prefix
QUIZ: Longest Matching Prefix A router has the following routing table: 10.50.42.0 /24 Send out on interface Z 10.50.20.0 /24 Send out on interface A 10.50.24.0 /22 Send out on interface B 10.50.20.0 /22
More informationNetwork layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing
Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every
More informationNetworking Technologies and Applications
Networking Technologies and Applications Rolland Vida BME TMIT Transport Protocols UDP User Datagram Protocol TCP Transport Control Protocol and many others UDP One of the core transport protocols Used
More informationCPSC 826 Internetworking. The Network Layer: Routing & Addressing Outline. The Network Layer
1 CPSC 826 Intering The Network Layer: Routing & Addressing Outline The Network Layer Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu November 10, 2004 Network layer
More informationRouter Architecture Overview
Chapter 4: r Introduction (forwarding and routing) r Review of queueing theory r Router design and operation r IP: Internet Protocol m IPv4 (datagram format, addressing, ICMP, NAT) m Ipv6 r Generalized
More informationNetwork layer: Overview. Network Layer Functions
Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every
More information6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1
6. Transport Layer 6.1 Internet Transport Layer Architecture 6.2 UDP (User Datagram Protocol) 6.3 TCP (Transmission Control Protocol) 6. Transport Layer 6-1 6.1 Internet Transport Layer Architecture The
More informationLecture 3. The Network Layer (cont d) Network Layer 1-1
Lecture 3 The Network Layer (cont d) Network Layer 1-1 Agenda The Network Layer (cont d) What is inside a router? Internet Protocol (IP) IPv4 fragmentation and addressing IP Address Classes and Subnets
More informationCSCI-GA Operating Systems. Networking. Hubertus Franke
CSCI-GA.2250-001 Operating Systems Networking Hubertus Franke frankeh@cs.nyu.edu Source: Ganesh Sittampalam NYU TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute
More informationChapter 4: Network Layer
Chapter 4: Introduction (forwarding and routing) Review of queueing theory Routing algorithms Link state, Distance Vector Router design and operation IP: Internet Protocol IPv4 (datagram format, addressing,
More informationInternetworking/Internetteknik, Examination 2G1305 Date: August 18 th 2004 at 9:00 13:00 SOLUTIONS
Internetworking/Internetteknik, Examination 2G1305 Date: August 18 th 2004 at 9:00 13:00 SOLUTIONS 1. General (5p) a) The so-called hourglass model (sometimes referred to as a wine-glass ) has been used
More informationThe Network Layer. Internet solutions. Nixu Oy PL 21. (Mäkelänkatu 91) Helsinki, Finland. tel fax.
The Network Layer Nixu Oy PL 21 (Mäkelänkatu 91) 00601 Helsinki, Finland tel. +358 9 478 1011 fax. +358 9 478 1030 info@nixu.fi http://www.nixu.fi OVERVIEW The Internet Protocol IP addresses, address resolution
More informationIntroduction to Internet. Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis
Introduction to Internet Ass. Prof. J.Y. Tigli University of Nice Sophia Antipolis What about inter-networks communications? Between LANs? Ethernet?? Ethernet Example Similarities and Differences between
More informationUnit 5: Internet Protocols skong@itt-tech.edutech.edu Internet Protocols She occupied herself with studying a map on the opposite wall because she knew she would have to change trains at some point. Tottenham
More informationNetworking: Network layer
control Networking: Network layer Comp Sci 3600 Security Outline control 1 2 control 3 4 5 Network layer control Outline control 1 2 control 3 4 5 Network layer purpose: control Role of the network layer
More informationTransport Layer. The transport layer is responsible for the delivery of a message from one process to another. RSManiaol
Transport Layer Transport Layer The transport layer is responsible for the delivery of a message from one process to another Types of Data Deliveries Client/Server Paradigm An application program on the
More informationICS 451: Today's plan
ICS 451: Today's plan ICMP ping traceroute ARP DHCP summary of IP processing ICMP Internet Control Message Protocol, 2 functions: error reporting (never sent in response to ICMP error packets) network
More information9th Slide Set Computer Networks
Prof. Dr. Christian Baun 9th Slide Set Computer Networks Frankfurt University of Applied Sciences WS1718 1/49 9th Slide Set Computer Networks Prof. Dr. Christian Baun Frankfurt University of Applied Sciences
More informationIP Protocols. ALTTC/Oct
IP Protocols Internet or IP technology over the years has emerged as the most prominent data communication technology. TCP/IP protocol has become de-facto data comm standard throughout the world. It can
More informationWilliam Stallings Data and Computer Communications 7 th Edition. Chapter 12 Routing
William Stallings Data and Computer Communications 7 th Edition Chapter 12 Routing Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route
More informationLecture 11: Networks & Networking
Lecture 11: Networks & Networking Contents Distributed systems Network types Network standards ISO and TCP/IP network models Internet architecture IP addressing IP datagrams AE4B33OSS Lecture 11 / Page
More informationIntroduction to routing in the Internet
Introduction to routing in the Internet Internet architecture IPv4, ICMP, ARP Addressing, routing principles (Chapters 2 3 in Huitema) Internet-1 Internet Architecture Principles End-to-end principle by
More informationOutline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting
Outline Routing Fundamentals of Computer Networks Guevara Noubir Introduction Broadcasting and Multicasting Shortest Path Unicast Routing Link Weights and Stability F2003, CSG150 Fundamentals of Computer
More informationinternet technologies and standards
Institute of Telecommunications Warsaw University of Technology 2017 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Network Layer The majority of slides presented in
More informationUDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data
ELEX 4550 : Wide Area Networks 2015 Winter Session UDP and TCP is lecture describes the two most common transport-layer protocols used by IP networks: the User Datagram Protocol (UDP) and the Transmission
More informationCIS 632 / EEC 687 Mobile Computing
CIS 63 / EEC 687 Mobile Computing IP Software: Routing Prof. Chansu Yu Network Protocols for Wired Network: Ethernet Ethernet address 48-bit, also called hardware/physical/mac/layer address Globally unique:
More informationChapter 24. Transport-Layer Protocols
Chapter 24. Transport-Layer Protocols 23.1 Introduction 23.2 User Datagram Protocol 23.3 Transmission Control Protocol 23.4 SCTP Computer Networks 24-1 Position of Transport-Layer Protocols UDP is an unreliable
More informationTCP and Congestion Control (Day 1) Yoshifumi Nishida Sony Computer Science Labs, Inc. Today's Lecture
TCP and Congestion Control (Day 1) Yoshifumi Nishida nishida@csl.sony.co.jp Sony Computer Science Labs, Inc 1 Today's Lecture Part1: TCP concept Part2: TCP detailed mechanisms Part3: Tools for TCP 2 1
More informationUniversity of Toronto Faculty of Applied Science and Engineering. Final Exam, December ECE 461: Internetworking Examiner: J.
University of Toronto Faculty of Applied Science and Engineering Final Exam, December 2009 ECE 461: Internetworking Examiner: J. Liebeherr Exam Type: A Calculator: Type 2 There are a total of 10 problems.
More informationLecture 3: The Transport Layer: UDP and TCP
Lecture 3: The Transport Layer: UDP and TCP Prof. Shervin Shirmohammadi SITE, University of Ottawa Prof. Shervin Shirmohammadi CEG 4395 3-1 The Transport Layer Provides efficient and robust end-to-end
More informationNetwork Layer: Internet Protocol
Network Layer: Internet Protocol Motivation Heterogeneity Scale Intering IP is the glue that connects heterogeneous s giving the illusion of a homogenous one. Salient Features Each host is identified by
More informationIntroduction to Networks and the Internet
Introduction to Networks and the Internet CMPE 80N Announcements Project 2. Reference page. Library presentation. Internet History video. Spring 2003 Week 7 1 2 Today Internetworking (cont d). Fragmentation.
More informationTransport Layer. -UDP (User Datagram Protocol) -TCP (Transport Control Protocol)
Transport Layer -UDP (User Datagram Protocol) -TCP (Transport Control Protocol) 1 Transport Services The transport layer has the duty to set up logical connections between two applications running on remote
More informationData Communication Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 34 TCP/ IP I
Data Communication Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 34 TCP/ IP I Hello and welcome to today s lecture on TCP/IP. (Refer Slide
More informationCSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca
CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Today Network layer: Internet Protocol (v4) Forwarding Next 2 classes:
More informationRouting Strategies. Fixed Routing. Fixed Flooding Random Adaptive
Routing Strategies Fixed Flooding Random Adaptive Fixed Routing Single permanent route for each source to destination pair Determine routes using a least cost algorithm Route fixed, at least until a change
More informationOn Distributed Communications, Rand Report RM-3420-PR, Paul Baran, August 1964
The requirements for a future all-digital-data distributed network which provides common user service for a wide range of users having different requirements is considered. The use of a standard format
More informationTransport Over IP. CSCI 690 Michael Hutt New York Institute of Technology
Transport Over IP CSCI 690 Michael Hutt New York Institute of Technology Transport Over IP What is a transport protocol? Choosing to use a transport protocol Ports and Addresses Datagrams UDP What is a
More informationSequence Number. Acknowledgment Number. Data
CS 455 TCP, Page 1 Transport Layer, Part II Transmission Control Protocol These slides are created by Dr. Yih Huang of George Mason University. Students registered in Dr. Huang's courses at GMU can make
More informationConcept Questions Demonstrate your knowledge of these concepts by answering the following questions in the space that is provided.
223 Chapter 19 Inter mediate TCP The Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols was developed as part of the research that the Defense Advanced Research Projects Agency
More informationCS 356: Computer Network Architectures. Lecture 10: IP Fragmentation, ARP, and ICMP. Xiaowei Yang
CS 356: Computer Network Architectures Lecture 10: IP Fragmentation, ARP, and ICMP Xiaowei Yang xwy@cs.duke.edu Overview Homework 2-dimension parity IP fragmentation ARP ICMP Fragmentation and Reassembly
More informationIntroduction to routing in the Internet
Introduction to routing in the Internet Internet architecture IPv4, ICMP, ARP Addressing, routing principles (Chapters 2 3 in Huitema) Internet-1 Internet Architecture Principles End-to-end principle by
More informationCC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid. Internet Protocol Suite
CC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid College of Computing and Information Technology Arab bacademy for Science &T Technology and Maritime Transport Internet Protocol Suite IP Suite Dr.
More informationChapter 4 Network Layer
Sungkyunkwan University Chapter 4 Network Layer Prepared by H. Choo 2018-Fall Computer Networks Copyright 2000-2014 2000-2018 Networking Laboratory 1/52 Presentation Outline 4.1 Introduction 4.2 Network-Layer
More informationETSF05/ETSF10 Internet Protocols Network Layer Protocols
ETSF05/ETSF10 Internet Protocols Network Layer Protocols 2016 Jens Andersson Agenda Internetworking IPv4/IPv6 Framentation/Reassembly ICMPv4/ICMPv6 IPv4 to IPv6 transition VPN/Ipsec NAT (Network Address
More informationIPv6: An Introduction
Outline IPv6: An Introduction Dheeraj Sanghi Department of Computer Science and Engineering Indian Institute of Technology Kanpur dheeraj@iitk.ac.in http://www.cse.iitk.ac.in/users/dheeraj Problems with
More informationTSIN02 - Internetworking
Lecture 2: The Internet Protocol Literature: Forouzan: ch 4-9 and ch 27 2004 Image Coding Group, Linköpings Universitet Outline About the network layer Tasks Addressing Routing Protocols 2 Tasks of the
More informationLast time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing
Last time Network layer Introduction forwarding vs. routing Virtual circuit vs. datagram details connection setup, teardown VC# switching forwarding tables, longest prefix matching IP: the Internet Protocol
More informationCSCI-1680 Network Layer: IP & Forwarding John Jannotti
CSCI-1680 Network Layer: IP & Forwarding John Jannotti Based partly on lecture notes by David Mazières, Phil Levis, Rodrigo Fonseca Administrivia IP out today. Your job: Find partners, get setup with Github
More informationCS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP
CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering
More informationELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition
ELEC / COMP 177 Fall 2016 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Presentation 2 Security/Privacy Presentations Nov 3 rd, Nov 10 th, Nov 15 th Upload slides to Canvas by midnight
More informationTransport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections
Application / Transport Interface Application requests service from transport layer Transport Layer Application Layer Prepare Transport service requirements Data for transport Local endpoint node address
More informationThe Internetworking Problem. Internetworking. A Translation-based Solution
Cloud Cloud Cloud 1 The Internetworking Problem Internetworking Two nodes communicating across a network of networks How to transport packets through this heterogeneous mass? A B The Internetworking Problem
More informationInformation Network Systems The network layer. Stephan Sigg
Information Network Systems The network layer Stephan Sigg Tokyo, November 1, 2012 Error-detection and correction Decoding of Reed-Muller codes Assume a second order (16, 11) code for m = 4. The r-th order
More informationChapter 12. Routing and Routing Protocols 12-1
Chapter 12 Routing and Routing Protocols 12-1 Routing in Circuit Switched Network Many connections will need paths through more than one switch Need to find a route Efficiency Resilience Public telephone
More informationSirindhorn International Institute of Technology Thammasat University
Name.............................. ID............... Section...... Seat No...... Thammasat University Final Exam: Semester, 205 Course Title: Introduction to Data Communications Instructor: Steven Gordon
More information