Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
Do you really want to delete this prezi?
Neither you, nor the coeditors you shared it with will be able to recover it again.
Make your likes visible on Facebook?
You can change this under Settings & Account at any time.
Transcript of Networking: Addressing
Classless Addressing Addressing 3 ARP and RARP Special Addresses
Classful - Subnetting
Classful - Supernetting Addressing 2 The IP address Addressing 1 Header
Time to Live
Protocol IP DataGram Header- routing and deliver info.
Total Length - entire length of datagram (including header)that determines padding if less than 46 bytes (46 - 1500).
Id- used for fragmenting. IF a network cannot encapsulate full ip datagram, it will need to fragment.
Flags - for fragmentation
Frag. Offset - for fragmentation
Time to Live - Datagram life span as it travels. Controls the number of hops. No infinite Loop.
Protocol - defines higher level protocol. Uses IP layer services to demuxe (IP muxes datagrams at transport layer).
Header Checksum - Error checking
Source Address - IP address of the source (unchangeable as traverse).
Destination Address (unchangeable)
Option - used for testing and debugging (optional). Fragmenting If networks cannot encapsulate full datagram then fragmentation is needed.
Routers decapsulates IP datagram.
Then processes it.
capsulates in another frame
Thus communication from network to network. Datagram Fragmentation: MTU Each DATA LINK protocol has its own frame format.
Max size of data field.
As the datagram is encapsulized, it cannot exceed the max size (because of hardware and software limitations of PHYSICAL NETWORK). Header: Flags 1st reserved, if D set, can’t fragment (must drop if can’t pass), if D=0, can fragment. If M is set, means more fragments exist Header: ID combo of the Id and source Ip address (IP protocol used a counter to label datagram) Header: Fragment Offset shows relative position of the fragment with respect to the whole datagram
Measured in 8 bytes
To ensure the frag. offset can fit into 13-bit fields Routers/Hosts that fragment must pick a size of each fragment so that the 1st byte is divisible by 8 (ie. 0, 8, 16, 24 ……696 …… 1400 …….. 2096 ……… 2800 … etc) Re-assembly Even if the fragments arrived to the destination out-of-order, the destination host could reassemble by:
The 1st fragment always has an offset of zero
If the 1st fragment’s length is divided by 8, it equals to the 2nd fragment’s offset
If the 1st and 2nd fragments’ total length are divided by 8, it equals to the 3rd fragment’s offset
The last fragment’s “more” bit should be set to 0 meaning no more fragments remaining Option: Format Composed of a 1-byte code field, a 1-byte length field and a variable-sized data field
Length field defines the total length of the option (including the code field)
Data field contains the data of the specific option some option types don’t require data
Code field is 8-bits long and contains 3 subfields: copy, class and number
Copy: controls presence of option. If 0, means copy options to the first fragment only; if 1, means copy option to all fragments
Class: defines general purpose of options. If 00, options is used for datagram control; if 10, options used for management and debugging.
Number: defines the type of option. As of now, only 6 types defined Option: Number Field Number: defines the type of option. As of now, only 6 types defined
2 of the option types are 1-byte in size (doesn’t need length and data fields)
4 of the options are multiple-byte and require the length and data fields Option: Recording Route The Tx creates a placeholder for the visited routers to fill in their IP addresses
The pointer field is used to point to the first empty entry so the router knows where to enter it’s outgoing IP address (address the datagram is leaving) Option: strict source route
(Predetermined route) Option used by the source to predetermine a route for the datagram as it traverses the Internet
In this case, the routers are specified up front in dictating the specific route. All routers MUST be visited if other routers are visited, the datagram is dropped) if all of the listed routers are not visited, the datagram is dropped
Routers are entered by the sender
Why: security, distinguish among different networks, don’t want certain traffic to leave your network, etc. Option: Loose Source Route Similar to the Strict Source Route Option but more relaxed
In this case, the routers are specified up front and all MUST be visited ( however, other routers can be visited too) Option: TimeStamp Used to record the time of datagram processing by a router (expressed in milliseconds from midnight)
Use this to track the routers’ behavior time from one router to the next
O-flow: # of routers that could not add their timestamp
Flags: dictates what the router should do (ie. add timestamp, add timestamp & IP address, etc..) Data: pointer and timestamp (O-Flow and Flags)). CheckSum The error detection method used by most TCP/IP protocols is called checksum
The checksum protects against bit corruption that could possibly occur during transmission
Checksum calculated at the Tx and is appended with the sent data
The Rx repeats the calculation in determining if the data is correct or not When to Apply Checksum For IP datagram, Checksum is used on the header only (and not the data)
The header needs to be check because it’s changing router-to-router (the data itself is static)
Recall that the higher-level protocols encapsulate data into the datagram and uses their own checksum Internetworking Protocol (IP) of the Network Layer is responsible for uniquely identifying all devices and connections on the Internet
The unique identifier is called an IP address
IP address consist of 32 bits (for version 4)
Keep in mind that, if a single device had multiple connections to the Internet, you would need an IP address for each connection
Address space is 232 = 4,294,967,296 32-bit addresses
In theoretical terms, 4,294,967,296 connections can be made to the Internet (not really true in real life) IP Conversions Addressing: Classful When IP addressing was first started, it used a concept called “classful addressing”. A newer concept called “classless addressing” is slowly replacing it though.
Regarding “classful addressing”, the address space is divided into five classes: A, B, C, D and E. NetId and HostId Blocks in Class A Blocks in Class B Blocks in Class C Class D addresses are used for multicasting; there's only one block in this class
Class E addresses are reserved for special purposes; most of the block is wasted. Addressing: Mask Given the network address, we can easily determine the block and range of addresses
Suppose given the IP address, can we determine the network address (beginning of the block) ?
To route packets to the correct network, a router must extract the network address from the destination IP address
For example, given 188.8.131.52, we know this is a class B, therefore 134.45 is the netid and 184.108.40.206 is the network address (starting address of the block)
How would we EXTRACT the network address from the IP address? We would use a MASK. AND operation Subnetting When we talked about CLASSFUL addressing we realized the problem of wasted host addresses and depleting available network addresses.
In subnetting, a network is divided into several smaller networks called subnetworks or subnets each subnet will have it’s own address
Typically, there are 2 steps in reaching a destination: first we must reach the network (netid) and then we reach the destination (hostid) Similar to Hierarchy concept in a telephone number In the early days, non-contiguous 1’s masks were used (0’s and 1’s could alternate)
Today, as a best practice, contiguous 1’s masks are used
In either case, the black box can perform the “masking” process SuperNetting Although class A and B addresses are dwindling there are plenty of class C addresses
The problem with C addresses is, they only have 256 hostids not enough for any midsize to large size organization especially if you plan to give every computer, printer, scanner, etc. multiple IP addresses
Supernetting allows an organization the ability to combine several class C blocks in creating a larger range of addresses
Note: breaking up a network = subnetting
Note: combining Class-C networks = supernetting When assigning class C blocks, there are two approaches: (1) random and (2) superblock
Random Approach: the routers will see each block as a separate network and therefore, for each block there would be an entry in the routing table a router contains an entry for each destination network
Superblock Approach: instead of multiple routing table entries, there would be a single entry. However, the choices of blocks need to follow a set of rules:
#1 the # of blocks must be a power of 2 (ie. 1, 2, 4, 8 )
#2 blocks must be contiguous (no gaps between blocks)
#3 the 3rd byte of the first address in the superblock must be evenly divisible by the number of blocks ie. if the # of blocks is N, the 3rd byte must be divisible by N Assigning or Choosing Class C Blocks Classful Approach Classless Approach Classless Addressing Recall the problems with Classful addressing you have to get a predefined block of addresses in most cases, the block is either too large or too small
In the 1990’s, ISP came into prominence they provide Internet access for individuals to midsize organizations that don’t want sponsor their own Internet service (ie. email, etc).
The ISP’s are granted several B and C blocks of addresses and they subdivide their address space into groups of 2, 4, 8, 16, etc.. blocks can be variable length
Because of the up rise of ISP’s, in 1996, the Internet Authorities announced a new architecture called Classless Addressing (making classful addressing obsolete) Variable Length Subnetting Suppose you were granted a Class C address this mean you would have 8 bits to play with
Also, suppose you needed 5 subnets consisting of the following # of hosts: 60, 60, 60, 30 and 30
If you used a 2 bit subnet mask can get 4 subnets with 64 stations each (too big)
If you used a 3 bit subnet mask can get 8 subnets with 32 stations each (too small)
What’s the solution ? Solution: used 2 subnet masks one applied after the other
Could use a 2 bit subnet mask and get 4 subnets with 64 stations each - this would satisfy the three 60-host subnet requirement therefore the subnet mask would be 255.255.255.11000000 (192)
We could then further divide one of the 64-host subnets into two 32-host subnets by applying this mask 255.255.255.11100000 (224) after this mask of 255.255.255.11000000 (192) is used Can 2 or more nodes in a private network communicate with 2 or more DIFFERENT global nodes at the same time ?
Can 2 or more nodes in a private network communicate with the same GLOBAL Node at the same time ? Physical and Logical Addressing Recall: physical address is needed on a local perspective
Recall: logical (or IP) address is needed on a global perspective
Therefore, both addresses are needed
Likewise, there is a need to map the logical address to it’s corresponding physical address (and vice versa)
The mapping can be “static” or “dynamic” in nature Static Mapping Approach Static Mapping simply entails creating a table associating the logical address with the physical address
The static-mapping table is stored in each machine on the network
A machine knowing another machine’s IP address can simply look-up the other machine’s physical address
What’s the problem with this ? The physical address could change (ie. (1) NIC could change, (2) some LANS change the physical addresses and (3) laptops (physical address changing physical network to physical network))
By having to update the static tables periodically, performance could suffer A host with IP address 220.127.116.11 and physical address 0xB23455102210 has a packet to send to another host with IP address 18.104.22.168 and physical address 0xA46EF45983AB. The two hosts are on the same Ethernet network. Show the ARP request and reply packets encapsulated in Ethernet frames. For the ARP case, the IP address of the RX was known and the physical address of the Rx was unknown
The Reverse Address Resolution Protocol is used when the physical address of the Tx is known and the IP address of the Tx is unknown.
Recall: when sending an IP datagram across different networks, the IP address is needed. RARP When the IP packet is moving through an ATM WAN, ATMARP finds and maps the physical address of the exiting-point router (given the IP address of the router)
How the binding is done depends on 2 cases
If there is a PVC (permanent virtual circuit)
Of if there is a SVC (switch virtual circuit) Mobile IP Chapter 10
DNS (Ch 19)
Cover BOOTP/DHCP (Ch 18) A registration reply is sent from the home agent to the foreign agent and then relayed to the mobile host. The reply confirms or denies the registration request Registration reply format 1st Phase: Agent Solicitation Once the mobile host has moved to the foreign network, if it (mobile host) hasn’t received any agent advertisements – it can initiate an agent ad by initiating an agent solicitation.
It uses ICMP’s solicitation message. Mobile IP does not use a new packet type for agent solicitation; it uses the router solicitation packet of ICMP. Approach 1:
Let the mobile host be able to change its address as it moves from network to network
The mobile host could use DHCP to secure a new address at each network
Issue 1: Config files would need to be updated
Issue 2: reboot at each network
Issue 3: DNS tables need updating in reflecting the change
Issue 4: Suppose the host leaves one network while some other host is sending it data ?? Facilitating Mobility – 2 approaches The IP addresses are designed to work with stationary hosts because part of the address defines the network to which the host is attached.
Therefore, for mobility reasons, IP has to be enhanced
With the current IP, a host DOES NOT have an IP address it can carry with itself hop to hop Difference Between Wireless LANS and Mobile IP
Wireless LANS are stationary – nodes are stationary
Mobile IP – nodes can be mobile Issues Each time a server receives a query for a name not in it’s domain, it has to do a search for the IP address
Reducing these searches increases efficiency
DNS does this by caching (or storing) the mapping responses in memory
If the server sends a client a response from memory (cache) versus the actual server, the response is marked “un-authoritative”.
Caching info too long could cause info to be out of date
To fix this, 2 approaches are used:
(1) the authoritative server attaches a “time-to-live” to the mapping and when that time expires, the server can’t send that info from cache
(2) all of the timing is done with in the server itself – after a certain time limit, all mappings out of date are purged. CACHING Client is seeking an answer (ie. address for a name or name for an address)
In this resolution case, the requesting client (resolver) expects the server to supply the final answer.
If the server can’t resolve the mapping, it forwards the request to it’s parent server.
If the parents server can’t resolve it, it’s sent to the next server – so forth
Once the mapping is resolved, the response travels back to the requesting client Recursive resolution Mapping a name to an address and vice versa is called name-address resolution
A host needing to map an address to a name (or vice versa) calls a DNS client (called a resolver)
The resolver accesses the closet DNS server with the mapping request
If the server has the info, it provides it
If the server doesn’t have the info, it either gets the info from some other server OR it refers the resolver to some other server
After the resolver receives the mapping, it determines if it’s correct or not – if correct, it sends the results to the requesting process RESOLUTION Although BOOTP provides more information to the client, the physical-to-logical address mapping is static – this mapping must be pre-determined
The Dynamic Host Configuration Protocol (DHCP) was devised to extend BOOTP
DHCP server has 2 DBs: (1) one DB statically binds the physical and IP addresses (so it can provide the BOOTP type service), (2) a second DB contains a pool of IP addresses (making the assignment of IP addresses dynamic)
Therefore, when a client sends a request, the DHCP server first checks its static DB and a permanent (static) IP address is returned. If the physical-to-logical relationship doesn’t exist, it then sends an un-used IP address from it’s second DB.
The dynamic IP addresses have a time limit DHCP Options for BOOTP Alternative Solutions to RARP
When a diskless computer is booted, it needs more information in addition to its IP address.
It needs to know its subnet mask, the IP address of a router, and the IP address of a name server.
RARP cannot provide this extra information. New protocols have been developed to provide this information.
In Chapter 16 we discuss two protocols, BOOTP and DHCP, that can be used instead of RARP. The remote host could bind the care-of address to the home address of the mobile host – by doing so, the remote host could refer to its registry to determine the care-of address given the home address and then send directly to the care-of address.
This could be implemented by the home agent sending an update binding packet back to the remote host
The problem is, once the mobile host moves, the remote hosts registry of care-of addresses will need to be updated
In this case, the home agent could send the remote host a warning packet to inform it of the change One Solution INEFFICIENCY IN MOBILE IP After the foreign agent registers the request, it relays the message to the home agent – as result, the home agent now knows the address of the foreign agent (source address of relay) A registration request is sent from the mobile host to the foreign agent to register its:
Care-of address, and to
Announce its home address and home agent’s address 2nd Phase: Registration Request and Reply The second phase is registration. After the mobile host moves to the foreign network and discovers the foreign agent, it must register:
Register itself with the foreign agent
Register itself with its home agent – foreign agent does this for the mobile host
Mobile host must renew registration if it expires
Mobile host must cancel registration when it returns to home network
To register with a foreign agent and the home agent, the mobile host uses a registration request and a registration reply 2nd Phase: Registration Request and Reply First Phase: Agent Discovery – Keep in mind that the home agent acts in behalf of the mobile host – so before leaving the home network, the mobile host must learn or DISCOVER the home agent’s address
After the mobile host moves to the foreign network, the mobile host must learn or DISCOVER the foreign agent’s address
The discovery involves two types of messages:
Agent Solicitation To communicate with a remote host, a mobile host goes through three phases: agent discovery, registration, and data transfer. Remote host and mobile host communication A resolver sends a query message to a local server to find the IP address for the host “chal.fhda.edu.”. We will illustrate the query and response messages separately. Example 1 The 2 high-order bits are 11 – to indicate this is a pointer
The other 14 bits represent a number that points to the corresponding byte number in the message DNS defines a 2-byte offset pointer that points to a previous occurrence of the domain.
For example, the domain name in the question record is repeated in the resource record however, instead of the name, a pointer is provided Format of an offset pointer In this resolution case, the requesting client sends a request to the server
If the server can’t resolve the mapping, it sends back to the requesting client the IP address of the server it thinks can resolve the mapping
This continues until the mapping is resolved Iterative resolution As we mentioned before, the IP address is used to uniquely identify hosts connected to the Internet (specifically “connections”)
The actual IP address is hard to memorize or identify with
People prefer names instead of addresses
Therefore, we need a way of mapping a name to an address (or vice versa)
In the old days, this mapping was done by each host and the host would update this file from a Master file
Today, the Internet is too global and large for this approach
One approach: have one computer holding these mappings (problem: too many hits – concentrated traffic congestion )
Actual approach: replicate the mappings across distributed computers – the computer needing the info goes to the closest server – approach called DOMAIN NAME SYSTEM (DNS) Recall -Domain Name System (DNS) The figure below shows the exchange of messages related to the transition diagram Exchanging messages Each station connected to the Internet must know:
It’s IP address
It’s subnet mask
The IP address of a router
The IP address of a name server
Typically, this info is stored in the computer’s config file and retrieved during boot-strap time
What happens if a computer boots-up for the first time or if a computer is diskless ? Will need an ARP/RARP like protocol to get the needed info
BOOTP – stands for Bootstrap Protocol – is a C/S protocol setup to provide the info above BOOTP Triangle Routing occurs when the remote host communicates with a mobile host that is not in the same network When the remote hosts sends to the mobile host – it goes from the remote host to the home agent, then from the home agent to the mobile host (this is the triangle) – it could have gone directly from the remote host to the mobile host. Communication involving mobile IP can be inefficient. A severe case is called double crossing or 2X. A moderate case is called triangle routing or dog-leg routing. INEFFICIENCY IN MOBILE IP Double crossing occurs when the mobile host moves to the same network as the remote host - when the remote hosts sends to the mobile host, instead of the sending being LOCAL, it crosses the Internet twice ((1) going to the home agent and (2) coming back from the home agent) Communication involving mobile IP can be inefficient. A severe case is called double crossing or 2X. A moderate case is called triangle routing or dog-leg routing. INEFFICIENCY IN MOBILE IP The question records are used by the client in getting info from the server
Query Name: contains the domain name
Query Type: defines the type of query (ie. (1) convert domain name to address, (2) id authoritative servers for zone, etc..
Query Class: defines the protocol using DNS 2 types of records: question and resource
For DNS, question records are used in the question section of the query and response messages
For DNS, resource records are used in the answer, authoritative and additional info sections of the response message only. TYPES OF RECORDS Question record format DNS has two types of messages: query and response
Query message consists of a header and question records
Response message consists of a header, question records, answer records, authoritative records and additional records DNS messages ARP/RARP use unicast & broadcast physical addresses (from earlier lectures, recall the formats of the broadcast/unicast addresses) ARP: maps the logical address to the physical address (given logical, find physical)
RARP: maps the physical address to the logical address (given physical, find logical) Dynamic Mapping: ARP and RARP When the host moves from its home network (22.214.171.124) to network 126.96.36.199, it receives a care-of address during the agent discovery and registration phase Use 2 addresses
Host keeps its original address (called home address)
Host also has a temporary address (called care-of address)
Home address is permanent and associates the host to its Home network
When the host moves from network to network, the care-of address changes
The care-of address is associated with the Foreign network Another Approach QR: defines the type of message (query or response)
OpCode: defines the type of query or response
AA: Authoritative – if set, it means the name server is an authoritative server
TC: Truncated – if set, means the response was more than 512 bytes and truncated to 512
RD: Recursion Desired – if set, means the client desires a recursive answer
RA: Recursion Available – if set, means a recursive response is available
rCode: Shows the Status of the error in the response Header fields are:
Identification: used by the client to match the response with the query
# of question records: # of queries in the question section of the message
# of answer records: # of answer records in the answer section of the response
# of authoritative records: # of authoritative records in the authoritative section of the response
# of additional records: # of additional records in the response message
Flags: Header format Other
The server doesn’t send back all of the info needed to boot-up. It sends a pathname to the client and the client can FTP the info over to it
Sometimes a remote server is used via a router (called a relay agent) versus a local server – in this case, the router would work in between the client and remote BOOTP server
Because UDP is used, BOOTP has to implement it’s own error control by (1) using a checksum approach and (2) by retransmitting if necessary (wait times to retransmit are random in minimizing traffic jams) Recall that the BOOTP protocol has a C/S implementation
The BOOTP server waits for a request from a client (passive open)
Client sends a request to the server by using “this host on this network” address (recall Ch 4) – host sending to a bootstrap server when it doesn’t know it’s own IP address
Then the server either broadcast or unicast the reply back – if the server unicast, it can’t use the ARP service because the server DOESN’T know the client’s IP address BOOTP operation Do you have any ideas why the length is specified ???? Option format Only used in the reply (not the request)
When the client finish reading the message, if it encounters 188.8.131.52 (magic cookie), the next 60 bytes are options
Option is composed of: (1) 1-byte tag, (2) a 1-byte length (length of value field) and (3) value BOOTP Options Field Transaction ID: id used to match reply with request
# of seconds: seconds elasped since start of boot
Client IP address: if the client doesn’t know this, filled with zeros
Your IP address: client address filled in by the server (for a reply message)
Server IP address: filled by the server reply (for a reply message)
Gateway IP address: address of router filled by the server reply
Client hardware address: physical address of client supplied by client
Server name: optional – filled by the server reply (for reply message)
Boot filename: optional – filled by the server reply
Options: can carry either network mask or default router address OR some vendor info Operation Code: defines the type of BOOTP packet (request or reply)
Hardware Type: type of LAN
Hardware Length: physical address length
Hop Count: max # hops a packet can travel BOOTP packet format Flag defines forwarding info Type is set to 1 for a request
Sequence # holds the message number & message # used to determine if a message is lost
Lifetime is # seconds the registration is valid (string of 0s mean deregistration, string of 1s means infinite)
Home Address address of the mobile agent
Home Agent Address
Identification – 64-bit number to match up the request with the reply
Extension – the home agent use this to authenticate to mobile agent Registration request format When the mobile host and the foreign agent are the same, the care-of address is called a co-located care-of address
Advantage: As the mobile host moves to network to network, doesn’t have to worry if a foreign agent is in the network. Disadvantage: mobile host will need special software that will allow it to have 2 addresses (both its home address and care-of address) Foreign Agent is usually a router attached to the foreign network
The Foreign Agent’s job is to receive packets from the Home agent (intended for the mobile host) and forward the received packets to the mobile host Home Agent is usually a router attached to the home network. Home Agent acts on behalf of the mobile host when a remote host sends data to the mobile host.
The Home Agent receives the data and sends it to the foreign agent To make the change of address transparent to the rest of the Internet requires a home agent and a foreign agent. The specific function of an agent is performed in the application layer. How is the address change made transparent ? Points to domain versus repeating it
Time to live (12000 seconds)
Size of the IP address
The IP address First 2 bytes show an identifier (1333) which relates a response to a query
The sequence of bits for the flag below is 1 0000 0 0 1 1 000 0000
The sequence of binary flag bits are translated to hex (8180)
# of question records, # of answer records, # of authoritative records, # of additional records Example of a response message The server issues a DHCPOFFER locking in the IP address.
The client then moves to the Selecting state and select one of the DHCPOFFERs and issue a DHCPREQUEST to the selected server and then goes to the Requesting State
If no DHCPOFFER, the client waits and retry
The client remains in the Requesting state until it receives a DHCPACK from the server (creating a bind between the client’s physical and IP addresses)
The client uses the leased IP address during the Bound state – when 50% of the time expire, the client does another DHCPREQUEST for a time renewal. During this state, the client can also cancel
During the Renewing state, if the DHCP server sends a new DHCPACK, the client starts over in the Bound state
If no DHCPACK is received and 87.5% of the time has expired, the client goes into a Rebinding state.
1 of 3 events can happen in the Rebinding state: (1) client receives a DHCPNACK and go back to the init state and try a new IP address , (2) lease expires or (3) receive DHCPACK and go to Bound state The DHCP starts in an initialization state broadcasting a DHCPDISCOVER request message The DHCP client transitions state to state depending on the messages it receives or sends DHCP transition diagram New options define:
Interactions between the DHCP client and server
Time limits on dynamically issued IP addresses
Etc.. The DHCP packet is very similar to the BOOTP packet except, a 1-bit flag and more options were added
1-bit flag: 1st bit of the unused field: used to let the client know if the reply is broadcast or unicast – recall the potential problem with a unicast reply – the client itself could possibly NOT know it’s IP address DHCP packet Type is set to 16
Length is the total length
Sequence # holds the message number & message # used to determine if a message is lost
Lifetime is # seconds the agent will accept requests
List of care-of addresses available (the use of the care-of address is announced in the registration request) Code field – 8-bit flag Mobile IP does not use a new packet type for agent advertisement; it uses the router advertisement packet of ICMP, and appends an agent advertisement message. 1st Phase: Agent Advertisement Country domains follow the same format as generic domains but uses a 2-character country abbreviation Commercial orgs
Info (info services)
Name (personal name)
Etc.. Generic domains define registered hosts according to their generic behavior. For the Internet, the domain name space is divided into 3 sections: generic domains, country domains and inverse domains. DNS in the Internet (4) When the mobile host wants to reply back to the remote host, it sends it in the normal manner using the destination address of the packet as now the source address of the reply (3) The foreign agent then decapsulate the packet from the IP packet and consult a registry that cross-referenced the source address of the packet (the mobile host’s home address) with the local care-of address of the mobile host (2) The home agent then sends the packet to the foreign host via tunneling (encapsulate the IP packet into another packet that has Tx & Rx addresses for the home agent and foreign agent) (1B) The packet is intercepted by the home agent acting on behalf of the mobile host (1A) Remote host send packet to mobile host as if mobile host is in its home network Given the agent discovery and registration have occurred, a mobile host now communicate with a remote host Big Picture – Data Transfer (4) When the mobile host wants to reply back to the remote host, it sends it in the normal manner using the destination address of the packet as now the source address of the reply (3) The foreign agent then decapsulate the packet from the IP packet and consult a registry that cross-referenced the source address of the packet (the mobile host’s home address) with the local care-of address of the mobile host (2) The home agent then sends the packet to the foreign host via tunneling (encapsulate the IP packet into another packet that has Tx & Rx addresses for the home agent and foreign agent) (1B) The packet is intercepted by the home agent acting on behalf of the mobile host (1A) Remote host send packet to mobile host as if mobile host is in its home network Given the agent discovery and registration have occurred, a mobile host now communicate with a remote host Another Approach - Big Picture 4chal4fhda3edu0
Query type(IP address), Class (Internet) First 2 bytes show an identifier (1333) which relates a response to a query
The sequence of bits for the flag below is 0000000100000000
The sequence of binary flag bits are translated to hex (0100)
# of question records, # of answer records, # of authoritative records, # of additional records Example of a query message admin.atc.fhda.edu. Resource data length: defines the length of the resource data
Resource data: variable length field – contains (1) answer to the query, (2) domain name of the authoritative server or (3) additional info Domain Name (see format below)
Domain type: type of query
Domain class: defines the protocol using DNS
Time to live: # of sec the answer is valid Each domain (node in the tree) is associated with a record called the resource record. Resource record format NETWORK (last name) HOST (first name) NETWORK (last name) HOST (first name) Inverse address Inverse domain is used to map an address to a name.
Server can have only the address and need to query the DNS server in mapping the address to name
To follow the convention of reading the domain labels from bottom to top, an IP address in inverted
For example, 184.108.40.206 (class B) is inverted to 220.127.116.11.in-addr.arpa
Where in-addr is the second-level node and arpa is the first-level node Inverse domain