Download presentation
Presentation is loading. Please wait.
Published byMelvin Ford Modified over 9 years ago
1
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Internetworking
2
2 Communication between networks. Problems: Different Networking technologies (Heterogeneity). So many Networks (Scaling). Some terminologies: “internetworking” refer to an arbitrary collection of connected networks. “Internet” the global internetwork. “Network” either directly connected or switched network using any LAN technology such as Ethernet, Token ring, ATM, etc.
3
3 IP Internet Concatenation of Networks or “networks of Networks”. “R” is routers and “H” is hosts. R2 R1 H4 H5 H3 H2 H1 Network 2 (Ethernet) Network 1 (Ethernet) H6 Network 3 (FDDI) Network 4 ( point-to-point) H7R3H8
4
4 IP Internet (cont) Protocol Stack Everything is running on top IP R1 ETH FDDI IP ETH TCP R2 FDDI PPP IP R3 PPP ETH IP H1 IP ETH TCP H8
5
5 Source Routing All routing information is provided by the source. The address can be implemented by a linked list in the packet header.
6
6 Networking Technologies Circuit Based Packet Based Virtual CircuitsConnectionless TDM Telephony SONET/SDH Frame Relay ATM IP X.25 CLNP (ISO) SNA (IBM) Appletalk IPX (Novell) DWDM Connection Oriented (variable rate, store-and-forward) (constant rate)
7
7 Virtual Circuit Switching Problems with source routing: The source must know the whole topology of network. The number of switches (header) is variable. 2 nd solution: use the telephone model or virtual circuits. Explicit connection setup (and tear-down) phase. This is called signaling. Each flow is identified by a Virtual Circuits Identifier (VCI). Switch needs to maintains a VC table.
8
8 Virtual Circuit Switching (cont) Subsequence packets follow the same circuit Sometimes called connection-oriented model. VCIs is swapped in the switches. Example: Lookup table. 0 13 2 0 13 2 0 13 2 5 11 4 7 Switch 3 Host B Switch 2 Host A Switch 1 In-portIn-VCIOut-portOut-VCI 25111 3 07
9
9 Virtual Circuit Model Typically wait full RTT for connection setup before sending first data packet. While the connection request contains the full address for destination, each data packet contains only a small identifier, making the per- packet header overhead small. If a switch or a link on the path fails, the connection is broken and a new one needs to be established. Connection setup provides an opportunity to reserve resources.
10
10 Datagram Switching No connection setup phase since it is costly. Each packet forwarded independently Sometimes called connectionless model 0 13 2 0 1 3 2 0 13 2 Switch 3 Host B Switch 2 Host A Switch 1 Host C Host D Host E Host F Host G Host H Analogy: postal system Each switch maintains a forwarding (routing) table
11
11 Datagram Model There is no round trip time delay waiting for connection setup; a host can send data as soon as it is ready. Source host has no way of knowing if the network is capable of delivering a packet or if the destination host is even up. Since packets are treated independently, it is possible to route around link and node failures. Since every packet must carry the full address of the destination, the overhead per packet is higher.
12
12 Connection Oriented vs. Connectionless Connection Oriented Connectionless Best-effort delivery (Send and Pray) packets are lost. No recover from lost. packets are delivered out of order duplicate copies of a packet are delivered packets can be delayed for a long time Connection set up. Signaling reserves resources along the end-to-end path Traffic flows Connection torn down and resources freed
13
13 Cell Switching (ATM) Connection-oriented packet-switched network Used in both WAN and LAN settings Signaling (connection setup) Protocol: Q.2931 Specified by ATM forum Packets are called cells 5-byte header + 48-byte payload Commonly transmitted over SONET other physical layers possible
14
14 Variable vs Fixed-Length Packets No Optimal Length if small: high header-to-data overhead if large: low utilization for small messages Fixed-Length Easier to Switch in Hardware simpler enables parallelism
15
15 Big vs Small Packets Small Improves Queue behavior finer-grained pre-emption point for scheduling link maximum packet = 4KB link speed = 100Mbps transmission time = 4096 x 8/100 = 327.68us high priority packet may sit in the queue 327.68us in contrast, 53 x 8/100 = 4.24us for ATM near cut-through behavior two 4KB packets arrive at same time link idle for 327.68us while both arrive at end of 327.68us, still have 8KB to transmit in contrast, can transmit first cell after 4.24us at end of 327.68us, just over 4KB left in queue
16
16 Big vs Small (cont) Small Improves Latency (for voice) voice digitally encoded at 64KBps (8-bit samples at 8KHz) need full cell’s worth of samples before sending cell example: 1000-byte cells implies 125ms per cell (too long) smaller latency implies no need for echo cancellors ATM Compromise: 48 bytes = (32+64)/2
17
17 IP Hour Glass IP Networking Technologies Networking Applications FrameATM DWDMSONET email Web file transfer Ethernet FDDI Multimedia X.25 HOST Router Link Remote Access Voice VPN Minimalist network layer TCP e-stuff IP is the mother of all disruptive technologies!
18
18 Encapsulation Example Ethernet Header IP Header TCP Header HTTP Header …. HTTP Data …. An Ethernet segment transmitting HTTP data.
19
19 IP Headers The current Version is 4 or IPv4. HLen- the Header Length: from 5-15 in 32-bit words. Length- the total length of the packet including headers. Max length is 64K. VersionHLen TOSLength IdentFlagsOffset TTLProtocolChecksum SourceAddr DestinationAddr Options (variable) Pad (variable) 0 4 816 1931 Data
20
20 Packet Headers TTL: Time To Live is expressed in second. It is to prevent packet from permanently circulating in a loop. Protocol: specify the packet application ex. 1 for ICMP. It is for demultiplexing to higher layer protocols. Checksum: is a 1-complement error checksum for the header only.
21
21 Packet Headers (Cont) TOS: type of Service Precedence Specify the priority Type of Services Specify routing, for instance cheapest, fastest and more reliable D for Delay T for Throughput R for Reliability C for low cost. Note: Precedence is only for inside channel queuing. 0 2 | 3 7 Precedence Type of service DTRC
22
22 Packet Headers (Cont) Options If C set, the option will copied to all fragments. Otherwise, only to the first one. Class 0 for control Class 2 for debugging and measurement. Options are rarely used in today except for ‘loose’ and ‘strict’ source routing parameters. ‘loose’ and ‘strict’ source option sometimes, is used for IP encapsulation in another IP or “Tunneling” CClassNumber
23
23 Fragmentation and Reassembly 0 7|0 7|0 4 7|0 7 IdentificationFlagsFragment Offset 012 0DFMF Flags DF: Don’t Fragment MF: More Fragment coming In fragmentation, IP copy the original header and only modify The length, which is the new length, and offset. Offset is used for reassembly. Note: Fragmentation may degrade the network performance. TCP implement “Path MTU discovery”. It start with large packet and with DF set flag, if it passed, TCP keeps the same packet size, otherwise, it reduces it.
24
24 Fragmentation and Reassembly (cont) Each network has a Maximum Transfer Unit size, MTU Strategy fragment when necessary (MTU < Datagram) try to avoid fragmentation at source host re-fragmentation is possible fragments are self-contained datagrams delay reassembly until destination host do not recover from lost fragments
25
25 Example Packet delivery from host H1 to host H8 H1R1R2R3H8 ETHIP(1400)FDDIIP(1400)PPPIP(512) PPPIP(376) PPPIP(512) ETHIP(512) ETHIP(376) ETHIP(512)
26
26 Example (cont) Ident = xOffset = 0 Start of header 0 Rest of header 1400 data bytes Ident = xOffset = 0 Start of header 1 Rest of header 512 data bytes Ident = x Offset = 512 Start of header 1 Rest of header 512 data bytes Ident = xOffset = 1024 Start of header 0 Rest of header 376 data bytes The packets are fragmented as:
27
27 Addressing Each host in the network is identified by an address having the following property. globally unique hierarchical: network + host 1111111100010001 1000011100000000 Network Number Host Number
28
28 IPv4 Implementation of Addresses Thirty Two Bits: 0 8 16 24 1111111100010001 1000011100000000 255 0 13417 255.17.134.0 Dotted Quad notation for “human readability”
29
29 Classful Addresses 0nnnnnnn 10nnnnnnnnnnnnnn 110nnnnn hhhhhhhh n = network address bit h = host identifier bit Class A Class C Class B
30
30 The Classful Address Space Leads to very inefficient allocation of addresses …
31
31 IP Addresses Example: Class “A” addresswww.mit.edu 18.181.0.31 (18 Class A) Class “B” addressmekong.stanford.edu 171.64.74.155 (128 Class B)
32
32 Classless Addressing CIDR ABCD 0 2 32 -1 0 128.9/16 128.9.0.0 2 16 142.12/19 65/8 Classless: Class-based: 128.9.16.14
33
33 Classless Addressing CIDR 0 2 32 -1 128.9/16 128.9.16.14 128.9.16/20128.9.176/20 128.9.19/24 128.9.25/24 Most specific route = “longest matching prefix”
34
34 Forwarding Datagrams “Network ID” uniquely identifies a physical network. All hosts and routers sharing a Network ID share same physical network. Every datagram contains a destination address. Is the datagram for a host on directly attached network? If no, consult forwarding table to find next-hop. If only one next-hop, can use default routing.
35
35 Forwarding Datagrams 128.9/16 128.9.16/20 128.9.176/20 128.9.19/24 128.9.25/24 142.12/19 65/8 PrefixPort 3 2 2 7 2 1 3 128.17.14.1 128.17.20.1 128.17.10.1 128.17.14.1 128.17.16.1 Next-hop R1 R2 R3 R4 1 2 3 128.17.20.1 128.17.16.1 e.g. 128.9.16.14 => Port 2 128.17.14.1
36
36 Default Routing R1 R2R3R4R5 Default Routing Requires Routing Table Default Routing
37
37 Inside a Router Forwarding Decision Forwarding Decision Forwarding Decision Forwarding Table Forwarding Table Forwarding Table Interconnect Output Scheduling 1. 2. 3.
38
38 IP Forwarding Process Forwarding Process IP Forwarding Table Router 1. Remove a packet from an input queue 3. Match packet’s destination to a table entry 2. Check for sanity, decrement TTL field 4. Place packet on correct output queue If queues get full, just drop packets! If queues get full, just drop packets!
39
39 Address Translation Map IP addresses into physical addresses destination host next hop router ARP table of IP to physical address bindings broadcast request if IP address not in table target machine responds with its physical address table entries are discarded if not refreshed
40
40 ARP Details Request Format HardwareType: type of physical network (e.g., Ethernet) ProtocolType: type of higher layer protocol (e.g., IP) HLEN & PLEN: length of physical and protocol addresses Operation: request or response Source/Target-Physical/Protocol addresses Notes table entries timeout in about 10 minutes update table with source when you are the target update table if already have an entry do not refresh table entries upon reference
41
41 ARP Packet Format TargetHardwareAddr (bytes 2–5) TargetProtocolAddr (bytes 0–3) SourceProtocolAddr (bytes 2–3) Hardware type = 1ProtocolType = 0x0800 SourceHardwareAddr (bytes 4–5) TargetHardwareAddr (bytes 0–1) SourceProtocolAddr (bytes 0–1) HLen = 48PLen = 32Operation SourceHardwareAddr (bytes 0–3) 081631
42
42 Internet Control Message Protocol (ICMP) Echo (ping) Redirect (from router to source host) Destination unreachable (protocol, port, or host) TTL exceeded (so datagrams don’t cycle forever) Checksum failed Reassembly failed Cannot fragment
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.