NAMES and ADDRESSES What’s in a name, anyway? 1011010011001110000111001100110 Feb.2001 C.Watters Internet Node Addresses Each node has unique network name hierarchical composition based on name granting authority www.cs.dal.ca unique network address hierarchical composition based on topographical 129.173.66.61 Feb.2001 C.Watters How do we get the network addr from network name? Network server translates name to location Needs to do a “lookup” “lookup” directories are distributed!! Feb.2001 Grouped into domains based on names each domain has a local name server process if fails to find match, forwards request up the line C.Watters Domain Hierarchy DNS hierarchy can be viewed as a tree Node in the tree corresponding to a domain. Leaves in the tree corresponding to the host being named. DNS names are processed from right to left and use period as separator. Example: Feb.2001 C.Watters Domain Hierarchy edu com gov mil arizona….mit cs ece bas che Feb.2001 acm physics opt C.Watters org ieee net uk ca Name Server Domain name hierarchy is partitioned into subtrees called zones Zone: Corresponds to some administrative authority responsible for that portion of hierarchy Zone is the fundamental unit of implementation of a name server. DNS can be thought of as a hierarchy of Feb.2001 name servers. C.Watters Name Server Root name server Arizona name Bellcore name …... server server Cs name server Feb.2001 ECE name server C.Watters Name Server Resource records: Name-to-value binding <Name, Value, Type, Class, TTL> Type field specifies how the Value should be interpreted. A: indicates that the value is a IP address. NS: the domain name for a host that is running a name server that knows how to resolve names within the specified domain. CNAME: the canonical name for a particular host MX: domain name of host running mail server Feb.2001 C.Watters Name Server Class: allows entities other than NIC to define useful record types. Widely used one - IN TTL: shows how long this records is valid. Example of resource records: Feb.2001 Root name server contains an NS record for each second level server. It also has an A record that translate this name into IP address. <arizona.edu, telcom.arizona.edu, NS, IN> <telcom.arizona.edu, 128.196.128.233, A, IN> C.Watters Name Server Second level <cs.arizona.edu,optima.cs.arizona.edu, NS, IN> <optima.cs.arizona.edu, 192.12.69.5, A, IN> <ece.arizona.edu, helios.ece.arizona.edu, NS, IN> <helios.ece.arizona.edu, 128.196.28.166, A, IN> Third level (within NS) <optima.cs.arizona.edu, 192.12.69.5, A, IN> <cheltenham.cs.arizona.edu, 192.12.69.60, A, IN> Feb.2001 C.Watters Name Resolution 2 1 cheltenham.cs.arizona.edu Client 192.12.69.60 8 Local name server 3 cheltenham.cs.arizona.edu Cs.arizona.edu, 192.12.69.5 4 5 Root name server Arizona name server 6 7 Feb.2001 C.Watters CS name server What is the network IP address? 32 bits (4 bytes) per node schemes Feb.2001 class-based addresses subnet addresses CIDR addresses classless addresses C.Watters 1.Class-based Addressing General form network.host eg. UC Berkeley is 128.32.0.0 2 bytes with decimal values 128 and 32 1000 0000 = 128 and 0010 0000=32 eg. Borg 129.173.66.61 4 bytes with dec. values 129 173 66 and 61 1000 0001=129 etc large networks have small addresses (more room for hosts on them) & small networks have longer address (fewer hosts expected) Feb.2001 C.Watters Classes Class A - large networks (net 1 byte/host 3) 0 Network host Class B - medium networks (net 2 bytes/host 2) host 1 0 Network Class C - small networks (net 3 bytes/host 1) 110 Feb.2001 Network host C.Watters Example 140.179.220.200 140 179 220 200 10001100 10110011 11011100 11001000 Feb.2001 C.Watters Look again at binary addresses???? A 1 byte network number starting with 0 0111 1111 is the biggest number 1-126 are A network addresses (126/16M hosts) written as 126.hostbyte1.hostbyte2.hostbyte3 A 2 byte network number starting with 10 1000 0000 0000 0000 so starts 128 1011 1111 1111 1111 up to 191 written as 129.173.hostbyte1.hostbyte2 (16k/64k hosts) A 3 byte network number starting with 11 1100 000 000 0000 0000 0000 starts 192 up to 223 C.Watters Feb.2001 written as 198.174.66.hostbyte (2M/256 hosts) So What’s the Problem Class A network ID – 16 M hosts!! Class B network ID – 65k hosts Hosts with same network ID are in same broadcast domain – IP router Most of these addresses are wasted Danger of running out of IP addresses Feb.2001 C.Watters 2.Subnet Addressing Create smaller broadcast domains Better use the bits in the host ID Subnetting allows a large network, say a class B network, to split into subnets each bounded by an IP router now say x subnets each of y nodes can share the one class B address Feb.2001 (instead of using x class B addresses.) C.Watters Subnet Network IDs Subnet has its own network ID This ID is a subset of the original classbased network ID a mask is used to identify which bits of the HOST portion are subnet ID and which the actual host Feb.2001 C.Watters Example Network 139.12.0.0 to rest of the Internet Sub Networks local router uses these ID’s Feb.2001 139.12.1.0 139.12.2.0 139.12.3.0 C.Watters So what are subnet masks?? Subnet mask is used so that the local router can extract the subnetted network ID subnet mask shows which bits of host ID are subnet bits and which host bits 32 bits long - goes with the network address router ANDs bits together to find subnet address 1- network ID & 0- host ID Feb.2001 C.Watters Subnet example <network ID><Host ID> <network ID><Subnet ID><Host ID> IP address 128.32.134.56 & mask 255.255.255.0 128 tells us this is a class B address so network part is 128.32 mask is 11111111 11111111 11111111 00000000 AND these together to get the subnet address so use first 24 bits as the subnet address!! And last 8 bits are for the host Feb.2001 C.Watters Why Bother? Turns out this uses addresses more efficiently within networks Addresses source computers can find out if the destination computer is on the same subnet or whether it needs to go out to the router Feb.2001 C.Watters 3. CIDR (Classless Interdomain Routing) For most organizations Class C address is too small (254) Class B address is too big (16k) CIDR assign a range of 8 Class C addresses – 2000 hosts Problem – routers now need to recognize multiple IP addresses!! CIDR collapses set of Class C addresses into one! Feb.2001 C.Watters How does CIDR work? Routing table entry Starting class C address Plus number of addresses allocated using a subnet mask Example Start 220.78.168.0 End 220.78.175.0 11011100 01001110 10101000 00000000 11011100 01001110 10101111 00000000 Feb.2001 SO 220.78.168.0/21 is the CIDR block C.Watters 4.Classless Domain routing Addresses are prefix-free initial segment can define a domain IF shortening it does not define another domain 01 10 11 routing table has longest matching prefixes Feb.2001 C.Watters An example Still can have domains 194.23.17.4 Let 1st 3 bits designate continent next 7 bits country France may use 5 bits for town Belgium may use only 4 bits for town using all 32 bits as address get 4 billion host addresses Feb.2001 C.Watters IPv6 Feb.2001 C.Watters Why do we need a new version IP? IPv6 features Feb.2001 C.Watters Why do we need a new version IP? With rapid explosion of destinations, we are on the way to exhausting the available Internet addresses Feb.2001 C.Watters Network Host Growth Rate Feb.2001 C.Watters What? There are lots of addresses!! Addresses are used in host blocks and cannot be used by other hosts Millions of addresses are unused and unusable! Feb.2001 C.Watters IPv6 Feature 128 bits address space Advanced Routing Capability Better Options Support Better Quality of service Support Authentication and Security Feb.2001 C.Watters A, B, C class of IPv4 address Class prefix scope network ID host ID subnet mask A B C 0 10 110 1-126 x. 128-191 x.x 192-223 x.x.x. x.x.x x.x x 255.0.0.0 255.255.0.0 255.255.255.0 0.0.0.0 reserved for broadcasting 127.0.0.1 reserved for loopback 224-255 reserved for multicast and research Total about 4 billion IP addresses Feb.2001 C.Watters IPv6 address architecture 128 bits of address space representation of address address format x:x:x:x:x:x:x:x (hexadecimal) 56DF:C4CC:A44B:5528:8E52:4224:ACBB:01EE special syntax CDFA:0000:0000:0000:0000:0000:11E7:D45A =CDFA::11E7:D45A 3.4 x 10^38 addresses, Feb.2001 C.Watters prefix of IPv6 address Feb.2001 prefix reserved for IPX address 0000 010 reserved for NSAP address 0000 001 reserved for multicast address 1111 1111 unassigned address 101 …… …… C.Watters IPv4 address transits to IPv6 IPv4-compatible IPv6 address 80 bits 16 bits 32 bits 0000…0000 0000 IPv4 address Reference: RFC1881, RFC1887, RFC1924 Feb.2001 C.Watters IPv6 Header is simpler: Header of IPv6 Header of IPv4 Feb.2001 C.Watters IPv6 increases the length of the IP header from 20 bytes to 40 bytes, but IPv6 header contains fewer fields, thus, it speed up routing. Flow Label Field in IPv6 Version: The version number of the protocol, 6 for IPv6 and 4 for IPv4. IPV6 introduce flow label to mark the packets requiring special handling(such as video and audio). Type of Service in IPv4 indicate how important the packet is. Feb.2001 C.Watters Fields removed from IPv6 Identification, Fragmentation Flags and Fragment Offset Fragmented packets have an extension header rather than fragmentation information in the IPv4 header. This reduces the size of the basic IPv6 header. Since higher-level protocols, particularly TCP, tend to avoid fragmentation of packet, this reduces the IPv6 header overhead for the normal case. IPv6 does not fragment packets in router to their destinations, only at the source. Feb.2001 C.Watters Fields removed from IPv6 (continued) Header Checksum Because transport protocols implement checksums, and because IPv6 includes an optional authentication header which can also be used to ensure integrity, IPv6 does not provide checksum monitoring of IP packets. Both TCP and UDP include a header in the checksums they use, so in these cases, the IP header in IPv4 is being checked twice. Feb.2001 C.Watters Summary IPv6 simplifies packet header formats. IPv6 provides a much larger address space IPv6 supports authentication and encryption of packet contents at the network layer. Feb.2001 C.Watters Transition Planning Options Maintain complete IPv4 routing system until run-out Upgrade IPv4 router to IPv4/6 dual router Building up IPv6 only routing system 6-bone Shutdown IPv4 in areas where there is no need for IPv4 Feb.2001 C.Watters