140 likes | 268 Views
Overview. Last Lecture Internet Protocols (2) Source: chapter 15 This Lecture Internet Protocols (3) Source: chapter 15 Next Lecture Internet Protocols (4) Source: chapter 15. CIDR. Classless Interdomain Routing Address allocation problem
E N D
Overview • Last Lecture • Internet Protocols (2) • Source: chapter 15 • This Lecture • Internet Protocols (3) • Source: chapter 15 • Next Lecture • Internet Protocols (4) • Source: chapter 15
CIDR • Classless Interdomain Routing • Address allocation problem • Exhaustion of the class B network address space • A class C network is normally two small for mid-size organizations • Solution: allocate contiguous blocks of class C networks • Routing table problem • By default, a routing table contains an entry for every network • The entries for all class C networks are beyond the ability of the current software and hardware to manage • Solution • Divide the world into 8 regions and allocate the class C networks as below Multi-regional 192.0.0.0 - 193.255.255.255 Europe: 194.0.0.0 - 195. 255.255.255 Others: 196.0.0.0 - 197. 255.255.255 North America 198.0.0.0 - 199. 255.255.255 C/S America 200.0.0.0 - 201. 255.255.255 Pacific rim 202.0.0.0 - 203. 255.255.255 Others: 204.0.0.0 - 205. 255.255.255 Others: 206.0.0.0 - 207. 255.255.255
CIDR • Classless Interdomain routing • Class C addresses become meaningless on the routes between the above “domains” • The technique CIDR is used to route between domains without honoring class C addresses • The key point is that multiple contiguous class C addresses are aggregated to be one entry in the routing table • CIDR is also called supernetting in contrast to subnetting • Example • An organization has four class C addresses • 194.0.32.0, 194.0.33.0, 194.0.34.0, 194.0.35.0 • We can use the following supernet mask to produce the network address of the group, which is no longer observe the rules of IP address classes
IP routing • IP routes packets by using the IP network number • If the network number is the local network, the destination is in the local network. Use a link layer frame to send to the destination • Otherwise the destination is outside the local network. Use a link layer frame to send to a local router (gateway) which can choose a route and send the packet. • Every host and router contains a routing table • The table records which router to forward a packet and which data link connection can be used to reach the router • Routing tables can be modified by • Hand - static routing • Routing protocol - dynamic routing • ICMP - redirect • Routing protocol • Interior routing: the daemon is called routed, which adopts Routing Information Protocol (RIP) running distance-vector routing algorithm for local networks • Exterior routing: the daemon is called gated, which adopts Open Shortest Path First (OSPF) running link state routing algorithm among gateways
DNS • Domain Name System • Converts IP names (ASCII strings) into IP addresses • Back in ARPANET, there was simply a file, host.txt, that listed all the hosts and their IP addresses. The file was maintained by a server and fetched by all other hosts and routers • For a few hundred machines, this approach worked reasonably well. • For hundreds of thousands of workstations in Internet • Using a single file will cause traffic overload, name collision, and consistency problems • a hierarchical, domain-based naming scheme and a distributed database system are used to implement the DNS • Map an IP name into an IP address • Map an IP address into an IP name • Provide email routing information • Handle aliases
DNS • Internet domain name space • DNS name space is divided up into non-overlapping zones. • Each zone contains some part of the tree and also contains name servers • Each zone has at least one name server which maintains file containing IP names and addresses of all workstations in the zone • DNS database is distributed among the name servers
DNS management • Network Information Center (NIC) manages root and top level domain • Local administration manages lower level domain • A name server must contact other name servers for non-local IP addresses • Root name server: root-servers.net • Provides the IP addresses for the name server authoritative for top level domain names • e.g. domain edu has its name server edu-server.net • 13 root name servers are currently available • A name server has to know the IP address of one of them • Domain name resolution • If a host has a query about an IP name, it passes the query to one of the local name servers. If the IP name falls under the zone of the name server, it returns the IP address of the name to the host • If, however, the IP name is remote and no information about the name is available, the name server sends a query message to the top-level name server for the name requested
DNS operation • Example of domain name resolution • For example, a host flits.cs.vu.nl wants to know the IP address of the host linda.cs.yale.edu • flits.cs.vu.nl sends a query to the local name server cs.vu.nl • Since linda.cs.yale.edu is a remote host and the server cs.vu.nl knows nothing about it, the server sends the query to the root name server • The root name server forwards the query to the server of the edu domain, edu-server.net • edu-server.net may not know linda.cs.yale.edu, but it at least knows its child yale.edu. So edu-server.net sends the query to the name server for yale.edu • In turn, the name server for yale.edu forwards the query to the name server for cs.yale.edu which has the requested information and sends the answer hop by hop back to the originator flits.cs.vu.nl
BOOTP&DHCP • BOOTP & DHCP • BOOTstrap Protocol • Dynamic Host Configuration Protocol • DHCP is a successor to BOOTP • Two bootstrap protocols that allow a host to determine its IP address without using RARP • RARP operates at a low level and relies on hardware address. These limit server application and dynamic allocation of hardware addresses • The protocols are based on high layer protocol UDP/IP • BOOTP operation • When a client machine bootstraps, it uses BOOTP to broadcast an UDP datagram to every machine in the local network, requesting bootstrap information, such as its IP address, file server IP address, router IP address, boot file name, and etc. • When a server machine receives the request, its BOOTP sends a reply to the client using broadcast • The client takes all responsibility for reliable communication by using timeout and retransmission
DHCP • BOOTP was designed for a relatively static environment • Each host has a permanent network connection • A manager creates a BOOTP configuration file that specifies a set of BOOTP parameters for each host. The file does not change frequently • With the advert of Internet Service Provider, wireless networks and portable computers, automatic allocation of IP addresses are needed • DHCP operation • A manage must configure a DHCP server by supplying a set of IP addresses • DHCP allows manual allocation, permanent automatic allocation, and temporary automatic allocation of IP addresses • Automatic allocation is subject to administrative constraints • Hardware address of a client is used as its ID • A client needs to exchange messages with the server to negotiate use of an IP address, such as the lease time of the address • A client can acquire all configuration info in a single message
Mobile IP • Problem • How to route a packet to a mobile host • Two kinds of users • Migratory users: stationary users who move from one fixed site to another from time to time but use the network only when they are physically connected to it • Roaming users: compute on the run and want to maintain their connections as they move around. • Mobile IP is for the migratory users • A mobile host has two addresses • Primary address: permanent and fixed • Second address: temporary and change from location to location • How to find the mobile host? • The world is divided into small areas • Each area has a home agent, which keeps track of users whose home is in the area • Each area has one or more foreign agents, which keep track of all mobile users visiting the area • When a new user enters an area, his computer must register itself with the foreign agent there, so that the foreign agent can inform its home agent where it is
Mobile IP • How to send a packet to a mobile host? • When a packet is sent to a mobile host, it is routed to its home agent in the first place • Because the home agent knows the address of the host’s foreign agent, it forwards the packet to the foreign agent which then passes the packet to the mobile host • Then the host’s home agent tells the sender to henceforth send packets to the host’s foreign agent, instead of sending to the home agent • Then subsequent packets can now be routed directly to the mobile host via the foreign agent, by passing the home location entirely
Voice and Video over IP • Additional protocol support is required when sending real-time data over IP • RTP • Real-Time Transport Protocol • Provides two key facilities • A sequence number in each packet that allows a receiver to detect out-of-order delivery or loss • A timestamp that allows a receiver to control playback • IP telephony • H.323 Standards proposed by ITU • Session Initiation Protocol (SIP) proposed for signaling by IETF • RSVP • Resource ReserVation Protocol • An endpoint uses RSVP to request a simplex flow through an IP Internet with specified QoS bounds. • If routers along the path agree to honor the request, they approve it; otherwise, they deny it • If an application needs QoS in two directions (full duplex), each endpoint must use RSVP to request a separate flow
Summary • Classless Interdomain Routing • Supernetting • IP routing • Static routing • Dynamic routing • Bellman-Ford algorithm (RIP) • Link state algorithm (OSPF) • ICMP - redirect • Domain Name System • BOOTP & DHCP • Mobile IP • Multimedia applications over IP • IP phone