صفحه 1:
William Stallings Data and Computer Communications Chapter 15 Internetwork Protocols

صفحه 2:
Internetworking Terms (1) I Communications Network | Facility that provides data transfer service D An internet ! Collection of communications networks interconnected by bridges and/or routers 1 The Internet - note upper case | I The global collection of thousands of individual machines and networks o Intranet ! Corporate internet operating within the organization I Uses Internet (TCP/IP and http)technology to deliver documents and resources

صفحه 3:
Internetworking Terms (2) I End System (ES) ! Device attached to one of the networks of an internet I Supports end-user applications or services 0 Intermediate System (IS) ! Device used to connect two networks I Permits communication between end systems attached to different networks

صفحه 4:
Internetworking Terms (3) I Bridge I IS used to connect two LANs using similar LAN protocols I Address filter passing on packets to the required network only 1 OSI layer 2 (Data Link) 0 Router 1 Connects two (possibly dissimilar) networks I Uses internet protocol present in each router and end system I OSI Layer 3 (Network)

صفحه 5:
RSVP OSPE Internetworking Protocols IGMP SNMP) ICMP TELNET MIME SMTP HTTP

صفحه 6:
Requirements of Internetworking 0 Link between networks 1 Minimum physical and link layer 0 Routing and delivery of data between processes on different networks 0 Accounting services and status info 0 Independent of network architectures

صفحه 7:
Network Architecture Features Addressing Packet size Access mechanism Timeouts Error recovery Status reporting Routing User access control Connection based or connectionless SS Se oS eyo ea

صفحه 8:
Architectural Approaches 0 Connection oriented 0 Connectionless

صفحه 9:
Connection Oriented 0 Assume that each network is connection oriented 0 1S connect two or more networks ۱ ۱5 appear as DTE to each network I Logical connection set up between DTEs | Concatenation of logical connections across networks I Individual network virtual circuits joined by IS 0 May require enhancement of local network services 1١ 802, FDDI are datagram services

صفحه 10:
Connection Oriented IS Functions 0 Relaying 1 Routing 0 e.g. X.75 used to interconnect X.25 packet switched networks 0 Connection oriented not often used 1 (IP dominant)

صفحه 11:
Connectionless Operation I Corresponds to datagram mechanism in packet switched network 0 Each NPDU treated separately 1 Network layer protocol common to all DTEs and routers I Known generically as the internet protocol U Internet Protocol I One such internet protocol developed for ARPANET I RFC 791 (Get it and study it) 1 Lower layer protocol needed to access particular network

صفحه 12:
Connectionless Internetworking 0 Advantages I Flexibility ! Robust | No unnecessary overhead 0 Unreliable I Not guaranteed delivery I Not guaranteed order of delivery Packets can take different routes I Reliability is responsibility of next layer up (e.g. TCP)

صفحه 13:
LAN 1 LARS switches DAN —= Router Router — ad system ‏نا‎ 4 a 1 TCP 33 10 ۱ ” ‏ایا م‎ 313 ‏مس ]| معت |[ عب‎ 33 mac], ‏سل‎ aac | [ase ‏نیو‎ Pair] Piya PaisaPay Paya CJ ] ايديا مرا جلها برا TePH = TCPhadee MACKEY = MAC raller Wav = Pheer NPA = N28 packet bender ‏فد ید اه‎ XL = Nasik header Gino | See أدج سيد IP Operation

صفحه 14:
Design Issues Routing Datagram lifetime Fragmentation and re-assembly Error control Flow control بحر يجن ابعر يكن بجر

صفحه 15:
Routing 1 End systems and routers maintain routing tables I Indicate next router to which datagram should be sent ! Static | May contain alternative routes I Dynamic ( Flexible response to congestion and errors 1 Source routing I Source specifies route as sequential list of routers to be followed I Security I Priority 1 Route recording

صفحه 16:
Datagram Lifetime T Datagrams could loop indefinitely 1 Consumes resources | Transport protocol may need upper bound on datagram life 5 Datagram marked with lifetime I Time To Live field in IP I Once lifetime expires, datagram discarded (not forwarded) 1 Hop count | Decrement time to live on passing through a each router I Time count 1 Need to know how long since last router 0 (Aside: compare with Logan’s Run)

صفحه 17:
Fragmentation and Re-assembly 0 Different packet sizes | When to re-assemble I At destination 0 Results in packets getting smaller as data traverses internet I Intermediate re-assembly 0 Need large buffers at routers 0 Buffers may fill with fragments 0 All fragments must go through same router * Inhibits dynamic routing

صفحه 18:
IP Fragmentation (1) 0 IP re-assembles at destination only 0 Uses fields in header I Data Unit Identifier (ID) 0 Identifies end system originated datagram * Source and destination address * Protocol layer generating data (e.g. TCP) * Identification supplied by that layer I Data length 0 Length of user data in octets

صفحه 19:
IP Fragmentation (2) | Offset 0 Position of fragment of user data in original datagram ۲ In multiples of 64 bits (8 octets) 1١ More flag 0 Indicates that this is not the last fragment

صفحه 20:
Fragmentation Example

صفحه 21:
Dealing with Failure 0 Re-assembly may fail if some fragments get lost 0 Need to detect failure 0 Re-assembly time out I Assigned to first fragment to arrive I If timeout expires before all fragments arrive, discard partial data Use packet lifetime (time to live in IP) I If time to live runs out, kill partial data

صفحه 22:
Error Control ص Not guaranteed delivery Router should attempt to inform source if packet discarded ! e.g. for time to live expiring Source may modify transmission strategy May inform high layer protocol Datagram identification needed (Look up ICMP) ص جک سا ان

صفحه 23:
Flow Control 0 Allows routers and/or stations to limit rate of incoming data 0 Limited in connectionless systems 0 Send flow control packets I Requesting reduced flow 0 e.g. ICMP

صفحه 24:
Internet Protocol (IP) 0 Part of TCP/IP I Used by the Internet 0 Specifies interface with higher layer I e.g. TCP 0 Specifies protocol format and mechanisms

صفحه 25:
IP Services 0 Primitives I Functions to be performed ! Form of primitive implementation dependent 0 e.g. subroutine call 1 Send 0 Request transmission of data unit ! Deliver Notify user of arrival of data unit 0 Parameters I Used to pass data and control info

صفحه 26:
Parameters (1) I Source address 0 Destination address 5 Protocol ! Recipient e.g. TCP o Type of Service I Specify treatment of data unit during transmission through networks 0 Identification ! Source, destination address and user protocol I Uniquely identifies PDU 1 Needed for re-assembly and error reporting 1 Send only

صفحه 27:
Parameters (2) 0 Don’t fragment indicator ! Can IP fragment data I If not, may not be possible to deliver I Send only 0 Time to live I Send onl 0 Data length 0 Option data 0 User data

صفحه 28:
Type of Service 0 Precedence I 8 levels 0 Reliability 1 Normal or high 0 Delay 1 Normal or low 0 Throughput 1 Normal or high

صفحه 29:
Options Security Source routing Route recording Stream identification Timestamping 1 ا 1 1 1

صفحه 30:
IP Protocol Type of Service Total Length Identification Fragment Offset Time to Live Protocol Header Checksum 20 octets Source Address Destination Address Options + Padding

صفحه 31:
Header Fields (1) 0 Version ! Currently 4 I IP v6 - see later 0 Internet header length I In 32 bit words I Including options 0 Type of service 1 Total length | Of datagram, in octets

صفحه 32:
Header Fields (2) I Identification 1 Sequence number | Used with addresses and user protocol to identify datagram uniquely 1 Flags 1 More bit 1 Don’t fragment 1 Fragmentation offset D Time to live D Protocol 1 Next higher layer to receive data field at destination

صفحه 33:
Header Fields (3) I Header checksum ! Reverified and recomputed at each router 1 16 bit ones complement sum of all 16 bit words in header I Set to zero during calculation 0 Source address 0 Destination address 0 Options 0 Padding ! To fill to multiple of 32 bits long

صفحه 34:
Data Field 0 Carries user data from next layer up 0 Integer multiple of 8 bits long (octet) 0 Max length of datagram (header plus data) 65,535 octets

صفحه 35:
IP Addresses - Class A 0 32 bit global internet address 0 Network part and host part 0 Class A I Start with binary 0 I All 0 reserved 1 01111111 (127) reserved for loopback I Range 1.x.x.x to 126.x.x.x I All allocated

صفحه 36:
IP Addresses - Class B Start 10 Range 128.x.x.x to 191.x.x.x Second Octet also included in network address 24 = 16,384 class B addresses All allocated يح ا ا نار بح

صفحه 37:
IP Addresses - Class C Start 110 Range 192.x.x.x to 223.x.x.x Second and third octet also part of network address 271 = 2,097,152 addresses Nearly all allocated I See IPv6 يح ا ا نار بح

صفحه 38:
Subnets and Subnet Masks I Allow arbitrary complexity of internetworked LANs within organization 1 Insulate overall internet from growth of network numbers and routing complexity 4 Site looks to rest of internet like single network 1 Each LAN assigned subnet number 1 Host portion of address partitioned into subnet number and host number 5 Local routers route within subnetted network ۲" Subnet mask indicates which bits are subnet number and which are host number

صفحه 39:
Routing Using Subnets ‘Net IhySaaet ID: 19 Sobnes number LANX Rest of Internet. 22281757 ‎Aas‏ تیه هه ‎Hest number: 1 Host number: 2‏ ‎ ‎Net ID/Submet ID: 192.228.17.64 ‎Sishnet ruber: 2 ‎LAN Y ‎IP Adeess: 19 Host nomber: | ‎1796 ‎ ‎‘Net abySunnet 1D: 1 Subnet numer: 3 ‎LANZ ‎IP Addess: 192.228.1797 Hest number |

صفحه 40:
ICMP 0 Internet Control Message Protocol 0 RFC 792 (get it and study it) 0 Transfer of (control) messages from routers and hosts to hosts 0 Feedback about problems I e.g. time to live expired 0 Encapsulated in IP datagram I Not reliable

صفحه 41:
ICMP Message Formats 3 ‏ا‎ ‎1 Sequence Numer ‘Oriinate Timestamp tori 3 0۳ 1 Sequence Sumer ‘Originats Timestamp Receive Tunestanip “Trovit Timestamp 0 Tioestamp Reply 3 ‘Cheeks 10 Sequence Number (a) Address Mask Request Cae 3 0 Sequence Numer Adress Mash (a) Adaress Mash Reis 3 Tipe ۳ Tipe Te] tore ‏نع‎ ‏ی‎ 1 TP eater + is » Destination Unreaehsbe: Thine Exceed; Serer Quench xT Tie | One 9 Pointer Tae TP Header + 61H of original datagram (0) Parameter Peablem 0 1 3 Tipe] ete ‏سس‎ ‏تست‎ TP Header +64 bis of original datag نا ع 0 0 ‎Tie] Cade ee‏ ‎Sequence Numer‏ سس ‎‘Optional data‏ (a) Rena, Hebe Reps

صفحه 42:
IP v6 - Version Number 0 IP v 1-3 defined and replaced 0 IP v4 - current version 0 IP v5 - streams protocol 0 IP v6 - replacement for IP v4 ! During development it was called IPng 1 Next Generation

صفحه 43:
Why Change IP? 0 Address space exhaustion 1 Two level addressing (network and host) wastes space | Network addresses used even if not connected to Internet 1 Growth of networks and the Internet | Extended use of TCP/IP I Single address per host 0 Requirements for new types of service

صفحه 44:
IPv6 RFCs 0 1752 - Recommendations for the IP Next Generation Protocol 0 2460 - Overall specification 0 2373 - addressing structure 0 others (find them)

صفحه 45:
0 Expanded address space 1128 bit 0 Improved option mechanism I Separate optional headers between IPv6 header and transport layer header I Most are not examined by intermediate routes 0 Improved speed and simplified router processing 0 Easier to extend options 0 Address autoconfiguration I Dynamic assignment of addresses

صفحه 46:
IPv6 Enhancements (2) 0 Increased addressing flexibility I Anycast - delivered to one of a set of nodes I Improved scalability of multicast addresses 0 Support for resource allocation I Replaces type of service | Labeling of packets to particular traffic flow I Allows special handling I e.g. real time video

صفحه 47:
Structure 3 — IPv6 header 0 ‏تس‎ ‎Hop-by-hop Variable options header ‏لت و‎ Routing header Variable سسسس )| Destination options Sede Variable TCP header 20 optional variable part) Application data | Variable —- ‘Next Header fild

صفحه 48:
Extension Headers 0 Hop-by-Hop Options I Require processing at each router 0 Routing I Similar to v4 source routing 0 Fragment 0 Authentication 0 Encapsulating security payload 0 Destination options I For destination node

صفحه 49:
IP v6 Header Bit 0 4 12 16 24 31 Version| ‘Traffic Class Flow Label Payload Length Next Header | Hop Limit Source Address 10 x 32 bits = 40 octets Destination Address

صفحه 50:
IP v6 Header Fields (1) 0 Version 16 0 Traffic Class ! Classes or priorities of packet I Still under development I See RFC 2460 0 Flow Label I Used by hosts requesting special handling 0 Payload length I Includes all extension headers plus user data

صفحه 51:
IP v6 Header Fields (2) 0 Next Header I Identifies type of header 0 Extension or next layer up 0 Source Address 0 Destination address

صفحه 52:
IPv6 Addresses 0 128 bits long 0 Assigned to interface 0 Single interface may have multiple unicast addresses 0 Three types of address

صفحه 53:
Types of address 0 Unicast I Single interface 0 Anycast I Set of interfaces (typically different nodes) ! Delivered to any one interface I the “nearest” 0 Multicast I Set of interfaces ! Delivered to all interfaces identified

صفحه 54:
Hop-by-Hop Options 0 Next header 0 Header extension length 0 Options I Jumbo payload Over 216 = 65,535 octets ! Router alert 0 Tells the router that the contents of this packet is of interest to the router 0 Provides support for RSPV (chapter 16)

صفحه 55:
Fragmentation Header ص Fragmentation only allowed at source No fragmentation at intermediate routers Node must perform path discovery to find smallest MTU of intermediate networks Source fragments to match MTU Otherwise limit to 1280 octets oo نار بح

صفحه 56:
Fragmentation Header Fields Next Header Reserved Fragmentation offset Reserved More flag Identification ‎eas‏ ابحم زاو ‎Sy‏ اس

صفحه 57:
Routing Header ص List of one or more intermediate nodes to be visited Next Header Header extension length Routing type Segments left I i.e. number of nodes still to be visited جه اجر از بح

صفحه 58:
Destination Options 0 Same format as Hop-by-Hop options header

صفحه 59:
Multicasting 0 Addresses that refer to group of hosts on one or more networks 0 Uses I Multimedia “broadcast” I Teleconferencing I Database I Distributed computing I Real time workgroups

صفحه 60:
2 Example Router A Confi ASS 0 5 12 D 2 2 13 ‏كك اد سح‎ 1 0 1 NM La 15 3 ‏:عد‎ ‎= ‎sroup member Multicast server N4 1 ok ‏سه‎ = 2 1 Co Ns NO سید ‘Group menor ‘Given tember

صفحه 61:
Broadcast and Multiple Unicast 0 Broadcast a copy of packet to each network I Requires 13 copies of packet 0 Multiple Unicast I Send packet only to networks that have hosts in group 1 11 packets

صفحه 62:
True Multicast 0 Determine least cost path to each network that has host in group I Gives spanning tree configuration containing networks with group members 0 Transmit single packet along spanning tree 0 Routers replicate packets at branch points of spanning tree 0 8 packets required

صفحه 63:
Multicast Example (a) Spanning tree from source to multicast group (bj Packets generated for multicast transmission

صفحه 64:
Requirements for Multicasting (1) I Router may have to forward more than one copy of packet 4 Convention needed to identify multicast addresses | |Pv4 - Class D - start 1110 ۱ ۱۳۷6 - 8 bit prefix, all 1, 4 bit flags field, 4 bit scope field, 112 bit group identifier 5 Nodes must translate between IP multicast addresses and list of networks containing group members 5 Router must translate between IP multicast address and network multicast address

صفحه 65:
Requirements for Multicasting (2) 0 Mechanism required for hosts to join and leave multicast group 0 Routers must exchange info 1 Which networks include members of given group Sufficient info to work out shortest path to each network I Routing algorithm to work out shortest path Routers must determine routing paths based on source and destination addresses

صفحه 66:
IGMP ص Internet Group Management Protocol RFC 1112 Host and router exchange of multicast group info Use broadcast LAN to transfer info among multiple hosts and routers oo ص

صفحه 67:
IGMP Format 0 Version Unused Checksum p Address (Class D IPv4 address)

صفحه 68:
IGMP Fields 0 Version ۱ 1 0 Type ۱ 1 - query sent by router 1 O- report sent by host 0 Checksum 0 Group address I Zero in request message ۱ Valid group address in report message

صفحه 69:
IGMP Operation I To join a group, hosts sends report message Group address of group to join In IP datagram to same multicast destination address All hosts in group receive message Routers listen to all multicast addresses to hear all reports 1 Routers periodically issue request message I Sent to all-hosts multicast address I Host that want to stay in groups must read all-hosts messages and respond with report for each group it is in

صفحه 70:
Group Membership in ۵ 0 Function of IGMP included in ICMP v6 0 New group membership termination message to allow host to leave group

صفحه 71:
Required Reading ص Stallings chapter 15 Comer, S. Internetworking with TCP/IP, volume 1, Prentice-Hall All RFCs mentioned plus any others connected with these topics Loads of Web sites on TCP/IP and IP version 6. ص ص ص

William Stallings Data and Computer Communications Chapter 15 Internetwork Protocols Internetworking Terms (1)  Communications Network  Facility that provides data transfer service  An internet  Collection of communications networks interconnected by bridges and/or routers  The Internet - note upper case I  The global collection of thousands of individual machines and networks  Intranet  Corporate internet operating within the organization  Uses Internet (TCP/IP and http)technology to deliver documents and resources Internetworking Terms (2)  End System (ES)  Device attached to one of the networks of an internet  Supports end-user applications or services  Intermediate System (IS)  Device used to connect two networks  Permits communication between end systems attached to different networks Internetworking Terms (3)  Bridge  IS used to connect two LANs using similar LAN protocols  Address filter passing on packets to the required network only  OSI layer 2 (Data Link)  Router  Connects two (possibly dissimilar) networks  Uses internet protocol present in each router and end system  OSI Layer 3 (Network) Internetworking Protocols Requirements of Internetworking  Link between networks  Minimum physical and link layer  Routing and delivery of data between processes on different networks  Accounting services and status info  Independent of network architectures Network Architecture Features          Addressing Packet size Access mechanism Timeouts Error recovery Status reporting Routing User access control Connection based or connectionless Architectural Approaches  Connection oriented  Connectionless Connection Oriented  Assume that each network is connection oriented  IS connect two or more networks  IS appear as DTE to each network  Logical connection set up between DTEs  Concatenation of logical connections across networks  Individual network virtual circuits joined by IS  May require enhancement of local network services  802, FDDI are datagram services Connection Oriented IS Functions  Relaying  Routing  e.g. X.75 used to interconnect X.25 packet switched networks  Connection oriented not often used  (IP dominant) Connectionless Operation  Corresponds to datagram mechanism in packet switched network  Each NPDU treated separately  Network layer protocol common to all DTEs and routers  Known generically as the internet protocol  Internet Protocol  One such internet protocol developed for ARPANET  RFC 791 (Get it and study it)  Lower layer protocol needed to access particular network Connectionless Internetworking  Advantages  Flexibility  Robust  No unnecessary overhead  Unreliable  Not guaranteed delivery  Not guaranteed order of delivery  Packets can take different routes  Reliability is responsibility of next layer up (e.g. TCP) IP Operation Design Issues      Routing Datagram lifetime Fragmentation and re-assembly Error control Flow control Routing  End systems and routers maintain routing tables  Indicate next router to which datagram should be sent  Static  May contain alternative routes  Dynamic  Flexible response to congestion and errors  Source routing  Source specifies route as sequential list of routers to be followed  Security  Priority  Route recording Datagram Lifetime  Datagrams could loop indefinitely  Consumes resources  Transport protocol may need upper bound on datagram life  Datagram marked with lifetime  Time To Live field in IP  Once lifetime expires, datagram discarded (not forwarded)  Hop count  Decrement time to live on passing through a each router  Time count  Need to know how long since last router  (Aside: compare with Logan’s Run) Fragmentation and Re-assembly  Different packet sizes  When to re-assemble  At destination  Results in packets getting smaller as data traverses internet  Intermediate re-assembly  Need large buffers at routers  Buffers may fill with fragments  All fragments must go through same router • Inhibits dynamic routing IP Fragmentation (1)  IP re-assembles at destination only  Uses fields in header  Data Unit Identifier (ID)  Identifies end system originated datagram • Source and destination address • Protocol layer generating data (e.g. TCP) • Identification supplied by that layer  Data length  Length of user data in octets IP Fragmentation (2)  Offset  Position of fragment of user data in original datagram  In multiples of 64 bits (8 octets)  More flag  Indicates that this is not the last fragment Fragmentation Example Dealing with Failure  Re-assembly may fail if some fragments get lost  Need to detect failure  Re-assembly time out  Assigned to first fragment to arrive  If timeout expires before all fragments arrive, discard partial data  Use packet lifetime (time to live in IP)  If time to live runs out, kill partial data Error Control  Not guaranteed delivery  Router should attempt to inform source if packet discarded  e.g. for time to live expiring     Source may modify transmission strategy May inform high layer protocol Datagram identification needed (Look up ICMP) Flow Control  Allows routers and/or stations to limit rate of incoming data  Limited in connectionless systems  Send flow control packets  Requesting reduced flow  e.g. ICMP Internet Protocol (IP)  Part of TCP/IP  Used by the Internet  Specifies interface with higher layer  e.g. TCP  Specifies protocol format and mechanisms IP Services  Primitives  Functions to be performed  Form of primitive implementation dependent  e.g. subroutine call  Send  Request transmission of data unit  Deliver  Notify user of arrival of data unit  Parameters  Used to pass data and control info Parameters (1)  Source address  Destination address  Protocol  Recipient e.g. TCP  Type of Service  Specify treatment of data unit during transmission through networks  Identification     Source, destination address and user protocol Uniquely identifies PDU Needed for re-assembly and error reporting Send only Parameters (2)  Don’t fragment indicator  Can IP fragment data  If not, may not be possible to deliver  Send only  Time to live  Send onl  Data length  Option data  User data Type of Service  Precedence  8 levels  Reliability  Normal or high  Delay  Normal or low  Throughput  Normal or high Options      Security Source routing Route recording Stream identification Timestamping IP Protocol Header Fields (1)  Version  Currently 4  IP v6 - see later  Internet header length  In 32 bit words  Including options  Type of service  Total length  Of datagram, in octets Header Fields (2)  Identification  Sequence number  Used with addresses and user protocol to identify datagram uniquely  Flags  More bit  Don’t fragment  Fragmentation offset  Time to live  Protocol  Next higher layer to receive data field at destination Header Fields (3)  Header checksum  Reverified and recomputed at each router  16 bit ones complement sum of all 16 bit words in header  Set to zero during calculation     Source address Destination address Options Padding  To fill to multiple of 32 bits long Data Field  Carries user data from next layer up  Integer multiple of 8 bits long (octet)  Max length of datagram (header plus data) 65,535 octets IP Addresses - Class A  32 bit global internet address  Network part and host part  Class A      Start with binary 0 All 0 reserved 01111111 (127) reserved for loopback Range 1.x.x.x to 126.x.x.x All allocated IP Addresses - Class B  Start 10  Range 128.x.x.x to 191.x.x.x  Second Octet also included in network address  214 = 16,384 class B addresses  All allocated IP Addresses - Class C  Start 110  Range 192.x.x.x to 223.x.x.x  Second and third octet also part of network address  221 = 2,097,152 addresses  Nearly all allocated  See IPv6 Subnets and Subnet Masks  Allow arbitrary complexity of internetworked LANs within organization  Insulate overall internet from growth of network numbers and routing complexity  Site looks to rest of internet like single network  Each LAN assigned subnet number  Host portion of address partitioned into subnet number and host number  Local routers route within subnetted network  Subnet mask indicates which bits are subnet number and which are host number Routing Using Subnets ICMP  Internet Control Message Protocol  RFC 792 (get it and study it)  Transfer of (control) messages from routers and hosts to hosts  Feedback about problems  e.g. time to live expired  Encapsulated in IP datagram  Not reliable ICMP Message Formats IP v6 - Version Number     IP IP IP IP v 1-3 defined and replaced v4 - current version v5 - streams protocol v6 - replacement for IP v4  During development it was called IPng  Next Generation Why Change IP?  Address space exhaustion  Two level addressing (network and host) wastes space  Network addresses used even if not connected to Internet  Growth of networks and the Internet  Extended use of TCP/IP  Single address per host  Requirements for new types of service IPv6 RFCs  1752 - Recommendations for the IP Next Generation Protocol  2460 - Overall specification  2373 - addressing structure  others (find them)  Expanded address space  128 bit  Improved option mechanism  Separate optional headers between IPv6 header and transport layer header  Most are not examined by intermediate routes  Improved speed and simplified router processing  Easier to extend options  Address autoconfiguration  Dynamic assignment of addresses IPv6 Enhancements (2)  Increased addressing flexibility  Anycast - delivered to one of a set of nodes  Improved scalability of multicast addresses  Support for resource allocation     Replaces type of service Labeling of packets to particular traffic flow Allows special handling e.g. real time video Structure Extension Headers  Hop-by-Hop Options  Require processing at each router  Routing  Similar to v4 source routing     Fragment Authentication Encapsulating security payload Destination options  For destination node IP v6 Header IP v6 Header Fields (1)  Version  6  Traffic Class  Classes or priorities of packet  Still under development  See RFC 2460  Flow Label  Used by hosts requesting special handling  Payload length  Includes all extension headers plus user data IP v6 Header Fields (2)  Next Header  Identifies type of header  Extension or next layer up  Source Address  Destination address IPv6 Addresses  128 bits long  Assigned to interface  Single interface may have multiple unicast addresses  Three types of address Types of address  Unicast  Single interface  Anycast  Set of interfaces (typically different nodes)  Delivered to any one interface  the “nearest”  Multicast  Set of interfaces  Delivered to all interfaces identified Hop-by-Hop Options  Next header  Header extension length  Options  Jumbo payload  Over 216 = 65,535 octets  Router alert  Tells the router that the contents of this packet is of interest to the router  Provides support for RSPV (chapter 16) Fragmentation Header  Fragmentation only allowed at source  No fragmentation at intermediate routers  Node must perform path discovery to find smallest MTU of intermediate networks  Source fragments to match MTU  Otherwise limit to 1280 octets Fragmentation Header Fields       Next Header Reserved Fragmentation offset Reserved More flag Identification Routing Header  List of one or more intermediate nodes to be visited  Next Header  Header extension length  Routing type  Segments left  i.e. number of nodes still to be visited Destination Options  Same format as Hop-by-Hop options header Multicasting  Addresses that refer to group of hosts on one or more networks  Uses      Multimedia “broadcast” Teleconferencing Database Distributed computing Real time workgroups Example Config Broadcast and Multiple Unicast  Broadcast a copy of packet to each network  Requires 13 copies of packet  Multiple Unicast  Send packet only to networks that have hosts in group  11 packets True Multicast  Determine least cost path to each network that has host in group  Gives spanning tree configuration containing networks with group members  Transmit single packet along spanning tree  Routers replicate packets at branch points of spanning tree  8 packets required Multicast Example Requirements for Multicasting (1)  Router may have to forward more than one copy of packet  Convention needed to identify multicast addresses  IPv4 - Class D - start 1110  IPv6 - 8 bit prefix, all 1, 4 bit flags field, 4 bit scope field, 112 bit group identifier  Nodes must translate between IP multicast addresses and list of networks containing group members  Router must translate between IP multicast address and network multicast address Requirements for Multicasting (2)  Mechanism required for hosts to join and leave multicast group  Routers must exchange info  Which networks include members of given group  Sufficient info to work out shortest path to each network  Routing algorithm to work out shortest path  Routers must determine routing paths based on source and destination addresses IGMP  Internet Group Management Protocol  RFC 1112  Host and router exchange of multicast group info  Use broadcast LAN to transfer info among multiple hosts and routers IGMP Format IGMP Fields  Version  1  Type  1 - query sent by router  O - report sent by host  Checksum  Group address  Zero in request message  Valid group address in report message IGMP Operation  To join a group, hosts sends report message  Group address of group to join  In IP datagram to same multicast destination address  All hosts in group receive message  Routers listen to all multicast addresses to hear all reports  Routers periodically issue request message  Sent to all-hosts multicast address  Host that want to stay in groups must read all-hosts messages and respond with report for each group it is in Group Membership in IPv6  Function of IGMP included in ICMP v6  New group membership termination message to allow host to leave group Required Reading  Stallings chapter 15  Comer, S. Internetworking with TCP/IP, volume 1, Prentice-Hall  All RFCs mentioned plus any others connected with these topics  Loads of Web sites on TCP/IP and IP version 6.

51,000 تومان