Internet ¡Protocol ¡(IP) ¡ Guevara ¡Noubir ¡ Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 4. Internet Protocol Fundamentals of Computer Networks
Lecture ¡Outline ¡ Internet ¡Protocol ¡ Addressing ¡ IP ¡over ¡LAN ¡ Rou;ng ¡ IPv6 ¡ Internet Protocol Fundamentals of Computer Networks
IP ¡Internet ¡ ¡ • Concatena;on ¡of ¡Networks ¡ Network 1 (Ethernet) H7 R3 H8 H1 H2 H3 Network 4 (point-to-point) Network 2 (Ethernet) R1 R2 H4 Network 3 (FDDI) • Protocol ¡Stack ¡ H5 H6 H1 H8 TCP TCP R1 R2 R3 IP IP IP IP IP ETH ETH FDDI FDDI PPP PPP ETH ETH Internet Protocol Fundamentals of Computer Networks
Service ¡Model ¡ • Connec;onless ¡(datagram-‑based) ¡ • Best-‑effort ¡delivery ¡(unreliable ¡service) ¡ – packets ¡are ¡lost ¡ – packets ¡are ¡delivered ¡out ¡of ¡order ¡ – duplicate ¡copies ¡of ¡a ¡packet ¡are ¡delivered ¡ – packets ¡can ¡be ¡delayed ¡for ¡a ¡long ¡;me ¡ • Datagram ¡format ¡ 0 4 8 16 19 31 V ersion HLen TOS Length Ident Flags Offset TTL Protocol Checksum SourceAddr DestinationAddr Pad Options (variable) (variable) Data Internet Protocol Fundamentals of Computer Networks
Fragmenta;on ¡and ¡Reassembly ¡ • Each ¡network ¡has ¡some ¡MTU ¡ • Strategy ¡ – fragment ¡when ¡necessary ¡(MTU ¡< ¡Datagram) ¡ – re-‑fragmenta;on ¡is ¡possible ¡ ¡ – fragments ¡are ¡self-‑contained ¡datagrams ¡ – use ¡CS-‑PDU ¡(not ¡cells) ¡for ¡ATM ¡ – delay ¡reassembly ¡un;l ¡des;na;on ¡host ¡ – do ¡not ¡recover ¡from ¡lost ¡fragments ¡ ¡ – hosts ¡are ¡encouraged ¡to ¡perform ¡“path ¡MTU ¡discovery” ¡ Internet Protocol Fundamentals of Computer Networks
Example ¡ ¡ Start of header Ident = x 0 Offset = 0 Rest of header 1400 data bytes Start of header Ident = x 1 Offset = 0 Rest of header 512 data bytes Start of header Ident = x 1 Offset = 512 Rest of header 512 data bytes Start of header Ident = x 0 Offset = 1024 Rest of header 376 data bytes Internet Protocol Fundamentals of Computer Networks
Internet ¡Control ¡Message ¡Protocol ¡ (ICMP) ¡RFC ¡792 ¡ • Integral ¡part ¡of ¡IP ¡but ¡runs ¡as ¡ProtocolType ¡= ¡1 ¡ using ¡an ¡IP ¡packet ¡ • Codes/Types: ¡ – Echo ¡(ping) ¡ – Redirect ¡(from ¡router ¡to ¡source ¡host) ¡ – Des;na;on ¡unreachable ¡(protocol, ¡port, ¡host, ¡cannot ¡ fragment) ¡ – TTL ¡exceeded ¡(so ¡datagrams ¡don’t ¡cycle ¡forever) ¡ – Cannot ¡fragment ¡ – Checksum ¡failed ¡ ¡ – Reassembly ¡failed ¡ Internet Protocol Fundamentals of Computer Networks
Global ¡Addresses ¡ • Proper;es ¡ – globally ¡unique ¡ – hierarchical: ¡network ¡+ ¡host ¡ 7 24 A: 0 Network Host • Dot ¡Nota;on ¡ 14 16 – 10.3.2.4 ¡ B: 1 0 Network Host – 128.96.33.81 ¡ 21 8 C: 1 1 0 Network Host – 192.12.69.77 ¡ 28 D: 1 1 1 0 Group Multicast Internet Protocol Fundamentals of Computer Networks
Datagram ¡Forwarding ¡ ¡ • Strategy ¡ – every ¡datagram ¡contains ¡des;na;on’s ¡address ¡ – if ¡directly ¡connected ¡to ¡des;na;on ¡network, ¡then ¡forward ¡to ¡host ¡ – if ¡not ¡directly ¡connected ¡to ¡des;na;on ¡network, ¡then ¡forward ¡to ¡ some ¡router ¡ – forwarding ¡table ¡maps ¡network ¡number ¡into ¡next ¡hop ¡ – each ¡host ¡has ¡a ¡default ¡router ¡ – each ¡router ¡maintains ¡a ¡forwarding ¡table ¡ • Example ¡(R2) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ Network ¡Number ¡ ¡ ¡ ¡Next ¡Hop ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡1 ¡ ¡ ¡ ¡R3 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡2 ¡ ¡ ¡ ¡R1 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡3 ¡ ¡ ¡ ¡interface ¡1 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡4 ¡ ¡ ¡ ¡interface ¡0 ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ Internet Protocol Fundamentals of Computer Networks
Address ¡Transla;on ¡ ¡ • Map ¡IP ¡addresses ¡into ¡physical ¡addresses ¡ – des;na;on ¡host ¡ – next ¡hop ¡router ¡ • Techniques ¡ – encode ¡physical ¡address ¡in ¡host ¡part ¡of ¡IP ¡address ¡ – table-‑based ¡ • 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 ¡ Internet Protocol Fundamentals of Computer Networks
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 ¡ – Opera;on: ¡request ¡or ¡response ¡ ¡ – Source/Target-‑Physical/Protocol ¡addresses ¡ • Notes ¡ – table ¡entries ¡;meout ¡in ¡about ¡15 ¡minutes ¡ – update ¡table ¡with ¡source ¡when ¡you ¡are ¡the ¡target ¡ ¡ – update ¡table ¡if ¡already ¡have ¡an ¡entry ¡ – do ¡not ¡refresh ¡table ¡entries ¡upon ¡reference ¡ Internet Protocol Fundamentals of Computer Networks
ARP ¡Packet ¡Format ¡ 0 8 16 31 Hardware type = 1 ProtocolT ype = 0x0800 HLen = 48 PLen = 32 Operation SourceHardwareAddr (bytes 0 – 3) SourceHardwareAddr (bytes 4 – 5) SourceProtocolAddr (bytes 0 – 1) SourceProtocolAddr (bytes 2 – 3) T argetHardwareAddr (bytes 0 – 1) T argetHardwareAddr (bytes 2 – 5) T argetProtocolAddr (bytes 0 – 3) Internet Protocol Fundamentals of Computer Networks
ATMARP ¡ • ATM ¡is ¡not ¡a ¡broadcast ¡network. ¡There ¡is ¡a ¡need ¡ for ¡a ¡specific ¡address ¡resolu;on ¡mechanism. ¡ • Use ¡an ¡ARP ¡server: ¡ – Each ¡node ¡in ¡the ¡Logical ¡IP ¡Subnet ¡(LIS) ¡is ¡configured ¡ with ¡the ¡ATM ¡address ¡of ¡the ¡ARP ¡server ¡ – Each ¡establishes ¡a ¡VC ¡to ¡the ¡ARP ¡server ¡and ¡register ¡ its ¡<IP-‑ADDR, ¡ATM-‑ADDR ¡> ¡ – All ¡address ¡resolu;on ¡requests ¡are ¡sent ¡to ¡the ¡ARP ¡ server ¡ Internet Protocol Fundamentals of Computer Networks
Dynamic ¡Host ¡Configura;on ¡Protocol ¡ (DHCP) ¡ • IP ¡addresses ¡of ¡interfaces ¡cannot ¡be ¡configured ¡when ¡ manufactured ¡(like ¡for ¡Ethernet) ¡ • Configura;on ¡is ¡an ¡error-‑prone ¡process ¡ • Solu;on: ¡centralize ¡the ¡configura;on ¡informa;on ¡in ¡a ¡ DHCP ¡server: ¡ – DHCP ¡server ¡discovery: ¡broadcast ¡a ¡DHCPDISCOVER ¡ request ¡ – Request ¡are ¡relayed ¡(unicast) ¡to ¡the ¡server ¡by ¡DHCP ¡relays ¡ – DHCP ¡server ¡broadcast ¡replies ¡with ¡<HWADDR, ¡IPADDR, ¡ lease-‑info> ¡ Internet Protocol Fundamentals of Computer Networks
Rou;ng ¡Overview ¡ • Forwarding ¡vs ¡Rou;ng ¡ – forwarding: ¡to ¡select ¡an ¡output ¡port ¡based ¡on ¡des;na;on ¡address ¡ and ¡rou;ng ¡table ¡ – rou;ng: ¡process ¡by ¡which ¡rou;ng ¡table ¡is ¡built ¡ • Network ¡as ¡a ¡Graph ¡ • Problem: ¡Find ¡lowest ¡cost ¡path ¡between ¡two ¡nodes ¡ • Factors ¡ – sta;c: ¡topology ¡ – dynamic: ¡load ¡ Internet Protocol Fundamentals of Computer Networks
Recommend
More recommend