240 likes | 365 Views
Network Layer – Part 2. 염익준. ICMP Features. Internet Control Message Protocol ICMP: Used by IP to send error and control messages ICMP uses IP to send its messages ICMP does not report errors on ICMP messages. ICMP Message Format. ICMP: Message Types. Type description
E N D
ICMP Features • Internet Control Message Protocol • ICMP: Used by IP to send error and control messages • ICMP uses IP to send its messages • ICMP does not report errors on ICMP messages.
ICMP: Message Types • Typedescription • 0 echo reply (ping) • 3 destination unreachable • source quench • redirect • 8 echo request (ping) • 9 route advertisement • 10 router discovery • 11 TTL expired • bad IP header • timestamp request • timestamp reply • information request • information reply • address mask request • address mask reply
IPng Considerations • Addressing • the two level structure of the IP address is convenient but wasteful of address spaces. • it is general practice to assign a unique network number to an IP network whether or not it is actually connected to the Internet. • networks are proliferating rapidly. • growth of TCP/IP usage in new areas will result in a rapid growth in the demand for unique IP addresses. • Performance • reduced number of fields in the IPv6 packet header • fixed length of header – extension header • disabling fragmentation
IPng Considerations • Network service • should be possible to associate packets with particular services classes • flow label • Addressing flexibility • anycast – delivered to just one of a set of nodes • multicast – improved scalability by a scope filed • Security capabilities • providing authentication and privacy
IPv6 Packet Header 0 4 12 16 24 31 V ersion T rafficClass FlowLabel PayloadLen NextHeader HopLimit SourceAddress DestinationAddress Next header/data
Traffic Class • One bit for two classes • congestion controlled traffic • non-congestion controlled traffic • Three bits for eight priorities in each class
Flow Label • a flow is a sequence of packets that • are generated from a single application instance from the source’s point of view • share attributes which affect how they are handled from the router’s point of view • Rules for flow label • hosts or routers that do not support the flow label field must • set the field to zero when originating a packet • pass the field unchanged when forwarding a packet • ignore the field when receiving a packet • all the packets with the same non-zero flow label must have the same destination address, source address, priority, hop-by-hop options header contents and routing header contents. • the source assigns a flow label to a flow.
Addressing • 128 bit address space • Address notation: 47cd:1234:4422:ac02:0022:1234:a456:0123 3 m n o p 125 – m – n – o – p 010 RegistryID ProviderID SubscriberID SubnetID InterfaceID
Anycast • Delivery method: • unicast: one-to-one • multicast: one-to-many • broadcast: one-to-all • anycast: one-to-one-of-many • Anycast address: an address assigned to multiple hosts
Multicast Technology • Requires group communication • one-to-many or many-to-many • dynamic mgmt of group subscription • Big problem with unicast technology: bandwidth waste with multiple data flows
Why Multicast? • Typical applications • Multimedia conference (video, audio, digital whiteboard) • Resource discovery (e.g., auto-topology) • War simulation • Commercial apps (e.g., transactions, news distribution) • Routing protocols (e.g., both EIGRP and OSPF use multicast to send updates to neighbors) • Games (e.g., distributed arcades) • Physics apps
Principles of Multicasting • Special IP addresses are used to identify multicast groups • Hosts notify multicast routers about the multicast groups to which they (want to) belong • Multicast groups are managed by the routers using multicast routing protocols
Multicast Addresses • Multicast packets are identified by Class D IP addresses • Global range from 224.0.0.0 to 239.255.255.255 • Reserved: 224.0.0.0-224.0.0.255 • Internet-wide addresses: 224.0.1.0-238.255.255.255 • Local addresses: 239.0.0.0-239.255.255.255 • Some special addresses • 224.0.0.1: all multicast systems on a subnet • 224.0.0.2: all multicast routers on a subnet
Multicast Groups • IGMP - Internet Group Management Protocol (RFC 1112) • defines how hosts tell routers which groups they are part of; available on Unix, PCs, Mac • routers query directly connected hosts sending an IGMP query to 224.0.0.1 (i.e., all multicast systems) • when there is more than one multicast router on a LAN, only one has to send the query • access lists can be applied to restrict the multicast groups hosts can receive • hosts send a single reply per group per LAN
Multicast Routing Protocols • Forwarding decisions: different from unicast protocols • multicast protocols use the source address instead of the destination address to make their forwarding decisions • Two main protocols • DVMRP (Distance Vector Multicast Routing Protocol) • Distance vector (RIP-like) algorithm • Static configuration based on tunnels between DVMRP routers (often Sun workstations) • Not easily scalable (e.g., max hops < 32) • PIM (Protocol Independent Multicast) • Typically installed on routers • Independent from the unicast routing protocols used by the router • Scalable (Dense-mode & Sparse-mode)
Flooding • When a router receives a packet that is addressed to a multicast group, it determines whether this is the first time the router has seen this particular packet. • If so, it forwards the packet on all the interfaces except the one on which it arrived. • Simple to implement. • Does not scale well because of the large number of duplicate messages.
RPF • Reverse Path Forwarding (RPF) • A router accepts a multicast packet from a source if and only if the packet has been received over the interface used to send unicast packets to the source • If the RPF test succeeds, the packet is forwarded to all the interfaces included in the router’s OIF (Outgoing Interface List) • If the RPF test fails, the multicast packet is discarded • A packet should never be re-sent over the RPF interface (to avoid loops)
DVMRP • DVMRP constructs source-rooted multicast delivery trees using RPF algorithm. • Basic operations follow:. • The first datagram for any (source, group) pair is forwarded across the entire internetwork. • The leaf routers transmit prune messages back toward the source if there are no group members on their directly attached leaf subnetworks. • Periodically the prune state times out, and the next datagram for the (source, group) pair is forwarded across the entire internetworks. • Implements a “graft” operation for quickly establishing a new branch. • if a router that previously sent a prune message for a (source, group) pair discovers new group members on a leaf network, it sends a “graft message” to the group’s previous-hop router. • When an upstream router receives a “graft” message, it cancels the previously received prune message. Graft messages may cascade back towards the source to establish the branch to the multicast tree.