routing rudiments...
with a nod to lammle, odom, et al
1) host_A creates an echo request for host_B (ICMP)
2) ICMP hands the request to IP, which makes a packet that contains the IP source address, the IP destination address and a protocol field
3) IP determines whether the destination is a local or remote network
4) in this case it is remote, so the packet needs to go to the remote network determined by host_A’s OS (default gateway 172.16.10.1)
5) the MAC address of 172.16.10.1 (E0) is known by host_A. this supposes the arp cache has resolved E0’s IP address to a hardware address. (the output of arp -a will display E0’s MAC address) the packet will be framed by the datalink layer and shipped to the MAC address of E0. hosts only communicate with MAC addresses on the local network
6) if not already resolved, the host sends an arp broadcast to the local network. Upon receipt of the resolution, the host cache’s the MAC address of E0 and encapsulates the packet in a frame with control information.
In both the above cases (hardware address known, hardware address resolved) the framed destination MAC address (E0) and source MAC address (host_A), an ether-type field (network layer IP), the packet, and FCS (frame check sequence which holds the result of a cyclic redundancy check CRC) are shipped to the MAC address of the default gateway, not the MAC address of the remote host
7) the frame thusly prepared, is ready to traverse the physical layer bit by bit
8) at the router, the packet is taken from the frame and off loaded to IP. The remainder of the frame is discarded.
a good place to jump
a good place to jump
9) IP checks the destination of the packet and if the destination does not match up with the routing table, the packet is discarded and ICMP reports back to host_A destination network unreachable
10) in case of a match, the packet is switched to interface E1’s buffer
11) the MAC address gets compared to the arp cache. if not found in arp cache, the router arps for the MAC address out E1. whether found in arp cache or resolved by host_B, the packet and MAC destination are framed by the datalink layer and shipped to the physical layer to traverse the wire
12) host_B takes receipt of the frame, runs a crc check and compares that to fcs then checks the MAC address. the protocol is determined to be IP, based on the ether-type field.
13) the network layer (IP) checks the destination IP address
14) ICMP discards the packet and creates an echo reply
15) a packet with source address, destination address, protocol and reply is built
16) IP determines the packet is on a remote network and ships it to the default gateway
17) the IP address of the default gateway is found by the host OS (again either in the arp cache or via an arp request) and is shipped to the MAC address of E1
18) the packet and MAC addresses are shipped to the data link layer for framing… then…
the frame thusly prepared, is ready to traverse the physical layer bit by bit and the last few steps (see beginning) are in reverse and ICMP issues exclamations of success
No comments:
Post a Comment