310 likes | 419 Views
Introduction: Internet Evolution The need for high-speed, high-capacity networks with quality-of-service (QoS) guarantees Protocol and implementation: a simple example IPv6 Goals Main Features Main Header Address Formats and Notation Extension Header Transition from IPv4 to IPv6
E N D
Introduction: Internet Evolution The need for high-speed, high-capacity networks with quality-of-service (QoS) guarantees Protocol and implementation: a simple example IPv6 Goals Main Features Main Header Address Formats and Notation Extension Header Transition from IPv4 to IPv6 Dual stack Header translation Tunneling Configured Automatic Unit 1: Introduction. From IPv4 to IPv6
The need for high-speed, high-capacity networks with quality-of-service (QoS) guarantees Availability of Web-based applications that are palatable to the end user Increased speed and efficiency of networks and the Internet Increase in traffic volume generated by users • Emergence of High-Speed LANs • Corporate Wide Area Networking needs: from centralized to network-centric • Digital electronics: DVD, digital cameras etc.
To provide QoS • Two emerging changes to the internet architecture • ISA (Integrated Services Architecture) • Differentiating Services (DS) • Involve upgrading router hardware and involve a number of new protocols • IPv6: it provides features that are useful to ISA and DS • RSVP: The Resource ReServation Protocol – Key element of ISA • RTP: The Real-Time Transport Protocol • Multicast routing protocols
Network Protocols = • agreed-upon ways in which computers exchange information • Syntax: structure or format of the data • Semantics: meanings • Timing: when data should be sent and how fast it can be sent. A simple example protocol and its implementation: SLIP
SLIP (Serial Line IP): RFC 1055 • Character-oriented • END IP-packet END … • Character stuffing The following C language function sends SLIP packets. They depend on two functions, send_char() and recv_char(), which send and receive a single character over the serial line. /* SLIP special character codes */ #define END 0300 /* indicates end of packet */ #define ESC 0333 /* indicates byte stuffing */ #define ESC_END 0334 /* ESC ESC_END means END data byte */ #define ESC_ESC 0335 /* ESC ESC_ESC means ESC data byte */
/* for each byte in the packet, send the appropriate character * sequence */ while(len--) { switch(*p) { /* if it's the same code as an END character, we send a * special two character code so as not to make the * receiver think we sent an END */ case END: send_char(ESC); send_char(ESC_END); break; /* if it's the same code as an ESC character, * we send a special two character code so as not * to make the receiver think we sent an ESC */ case ESC: send_char(ESC); send_char(ESC_ESC); break; /* otherwise, we just send the character */ default: send_char(*p); } p++; } /* tell the receiver that we're done sending the packet */ send_char(END); }
IPv6 (IPng) (1990: IETF starts to work on a new protocol. RFC 1550 - call for proposals for discussion. Listed goals) Goals: 1.Support billions of hosts, even with inefficient address space allocation. 2.Reduce the size of the routing tables. 3.Simplify the protocol, to allow routers to process packets faster. 4.Provide better security than current IP. 5.Pay more attention to type of service, particularly for real-time data. 6.Aid multicasting by allowing scopes to be specified. 7.Make it possible for a host to roam without changing its address. 8.Allow the protocol to evolve in the future. 9.Permit the old and the new protocols to coexist for years. Main Features: ·128-bit address. ·Simplification of header: 7 fields vs 13 in IPv4. ·Better support for options. ·Big advance in security: authentication and privacy. ·More attention to type of service.
Figure 25-1 IPv6 address Figure 25-2 Abbreviated address
Figure 25-3 Abbreviated address with consecutive zeros Figure 25-4 Partial address FDEF::BBFF/96 actually expands into FDEF:0:0:0:0:0:0:BBFF/96 = FDEF:0:0:0:0:0 FDEC:0:0:0:0:BBFF::/96 or FDEC::BBFF:0:0/96
Figure 25-5 Address Structure
Figure 25-6 Provider-based address Figure 25-7 Address hierarchy
Figure 25-8 Unspecified address: as a source address only when a host does not know its own address Figure 25-9 Loopback address
Figure 25-10 Compatible address: IPv4 only Figure 25-11 Mapped address: Migrated to IPv6 but still want to use IPv4
Local Addresses Figure 25-12 Link Local Address – like private address not to be used on the Internet Figure 25-13 Site local address: private addresses for a network with several subnetworks not connected to the Internet Figure 25-14 Multicast address
Figure 25-15 IPv6 Datagram Figure 25-16 IPv6 datagram format
Figure 25-18 Hop-by-hop option header format
The format of options in a hop-by-hop option header Jumbo payload
Fragmentation Header • In IPv6 • minimum MTU = 576 bytes • only source can fragment. Use Path MTU Discovery technique to find the smallest MTU or use 576. • Authentication Header • Validate the message sender • Ensures integrity of data (data not altered. • Security parameter index what algorithm to use Encrypted Security Payload (ESP)
e.g.TCP segment or UDP datagram Transport-Mode Encryption Tunnel-Mode Encryption
Transport mode vs tunnel mode (Usually host to host) (Usually between security devices such as firewalls and gateways)
Transition from IPv4 to IPv6: Strategies • Dual-stack operation • An IPv6 nodes run both IPv6 and IPv4 and use the Version field to decide which stack should process an arriving packet. • Initially all hosts should have a dual stack before migrating completely.
Header Translation • When a majority of the Internet has migrated to IPv6
Tunneling: when IPv6 packets must travel through an IPv4 region Tunneling (Configured)
Sending rules for an IPv6/IPv4 node Key to abbreviations