Title: TCPIP over Ethernet
1TCP/IP over Ethernet John Mora ltjohn.mora_at_accre.v
anderbilt.edugt
2Ethernet and TCP/IP Timeline
- 1971 - ALOHAnet, also known as ALOHA, was a
radio-based pioneering computer networking system
developed at the University of Hawaii. - Â
- 1973 - Researchers at XEROX PARC developed the
ALOHA radio network concept further (at the time
used to network XEROX ALTO workstations to
ARPANET). The new protocol "Ethernet", the "Ether
Network". The original Ethernet ran at 2.94Mbps. - Â
- 1980 - Digital, Intel and Xerox create the DIX
Ethernet Standard, version 1. - 1980 - IEEE creates the 802 working group (Feb.
1980). - 1980 - RFC768 (UDP) is published.
- 1981 - RFC 791 (IP) and RFC 793 (TCP) are
published. - 1982 - Digital, Intel and Xerox create the DIX
Ethernet Standard, version 2. - 1983 - IEEE 802.3, the third subcommittee
concentrated on the standardization of a CSMA/CD
network protocol that was functionally equivalent
to DIX Ethernet Type II. - 1985 - Official Standard ANSI/IEEE Std.
802.3-1985 - Â
- Later supplements added to support Ethernet at
2Mb/s through 10Gb/s and over varied media
(power, wireless).
3Ethernet and TCP/IP Timeline
Xerox Alto
4Standards Organizations
Standards are documented in Request For Comment
(RFC) Â A complete list of Internet Standards is
available at http//www.rfc-editor.org/rfcxx00.ht
ml
5Ethernet CSMA/CD Â
Carrier Sense Multiple Access With Collision
Detection (CSMA/CD)
6Ethernet CSMA/CD Â
Carrier Sense Multiple Access With Collision
Detection (CSMA/CD)
7OSI Model, Summary Â
8OSI Model, Summary Â
Application
Presentation
Session
Transport
Network
Data Link
Physical
9Ethernet II (DIX) Framing
A frame is the unit of transmission in a link
layer protocol, and consists of a link-layer
header followed by a packet. Â MAC Addresses are
48-bit (6 byte) identifiers unique to each
NIC. Â EtherType (2 byte/16-bit) describes which
protocol is encapsulated in the frame data
IPv4, IPv6, IBoE, FCoE, etc. (http//standards.iee
e.org/regauth/ethertype/eth.txt)
10MAC Header, Source/Destination addresses
- Â MAC Addresses are 48-bit (6 byte) identifiers
unique to each Network Interface. - Â
- Individual/Group Address Bit
- Universally/Locally administered address bit
- Organizationally unique identifier (OUI, a 22-bit
field assigned by the IEEE) (bits 3-24)Â - NIC-specific unique address (OUA, a 24-bit number
assigned by the manufacturer)
11Address Resolution Protocol - RFC 826, STD 37
- The purpose of this RFC is to present a method of
Converting Protocol Addresses (e.g., IP
addresses) to Local Network Addresses (e.g., MAC
addresses). - Keep in mind host addresses are translated from
common names like www.google.com to IP addresses
using the Domain Name System (DNS). - Â
- The Address Resolution module tries to find this
pair in a table. If it finds the pair, it gives
the corresponding 48.bit Ethernet address back to
the caller (hardware driver) which then transmits
the packet. - An example of an ARP transaction is explained in
RFC826 and a diagram of this transaction is
illustrated at lthttp//eventhelix.com/RealtimeMant
ra/Networking/Arp.pdfgt. - Â
12Address Resolution Protocol - RFC 826, STD 37
arp a b7n8 (10.0.57.8) at 000D601EC3A6
ether on eth0 vmp035 (10.0.12.15) at
00504502FE83 ether on eth0 vmp171
(10.0.19.11) at 005045BB95D0 ether on
eth0 b10n9 (10.0.60.9) at 000D601EC2F4
ether on eth0 vmp413 (10.0.31.13) at
0050455F1490 ether on eth0 vmp013
(10.0.11.13) at 00504502FEE5 ether on
eth0 b5n24 (10.0.55.24) at 000D601EC264
ether on eth0 vmp416 (10.0.31.16) at
0050455F151C ether on eth0 b1n12
(10.0.51.12) at 000D601EC1E8 ether on
eth0 b4n16 (10.0.54.16) at 000D601EC310
ether on eth0Â
13TCP/IP An Overview
- When data is requested from a remote host, the
TCP module of the host takes the data and divides
it into individually numbered segments to be
forwarded to the requesting host. - The IP module encapsulates the TCP segment into
an IP packet by adding the appropriate protocol
headers, which include the destination IP
address. - Distinct packets from the same source host may
take distinct and seperate routes to reach the
requesting host. - The requesting host receives the packets, where
the TCP module then reassembles the segments,
which are then passed to the Application Layer.
14Transmission Control ProtocolRFC 793, STD 7
15Internet Protocol - RFC 791, STD 5
- Summary
- The internet protocol implements two basic
functions addressing and fragmentation. - IP does not provide a reliable communication
facility. -
- No error control for data, only a header
checksum. - No retransmissions or flow control.
- No connections or logical circuits (virtual or
otherwise).
16Internet Protocol - RFC 791, STD 5
17Transmission Control ProtocolRFC 793, STD 7
- The primary purpose of the TCP is to provide
reliable, securable logical circuit or connection
service between pairs of processes. - Basic Data Transfer TCP is able to handle data
in streams - Reliability Each octet is assigned a Sequence
Number and 16-bit Checksum, which must be ACK'd
by the receiving end - Flow Control The receiver can govern the
sender's behavior by issuing a range of sequence
numbers. - Multiplexing TCP provides a series of ports by
which multiple sockets can be created. - Connections Sockets, Sequence Numbers and Window
Sizes are together referred to as a Connection. - Precedence and Security The user may specify the
security and precedence of their connections.
18OSI Model, Summary Â
19Internet Protocol - RFC 791, STD 5
- Internet Datagram Header Fields
- Total Length (in octets)
- Identification (reassembly info.)
- Flags (Fragment Status)
- Fragment Offset
- Time to Live, Protocol (IANA)
- Header Checksum
- Source Address (32-bit)
- Destination Address (32-bit)
- And more!
20Internet Protocol - RFC 791, STD 5
21Transmission Control ProtocolServices
- Common Services
- SSH, tcp/22
- Telnet, tcp/23
- SMTP, tcp/25
- DNS (zone transfers), tcp/53
- HTTP, tcp/80
- POP3, tcp/110
- IMAP, tcp/143
- HTTPS, tcp/443
- Secure IMAP, tcp/993
22Internet Protocol - RFC 791, STD 5
- There are three Classes of internet addresses
- Class C (CIDR /24, netmask 255.255.255.0, 256
Hosts) - Class B (CIDR /16, netmask 255.255.0.0, 65k
Hosts) - Class A (CIDR /8, netmask 255.0.0.0, 16M Hosts)
23Internet Protocol - RFC 791, STD 5
- Subnetting - RFC 1878
- Â Addresses are fixed length of four octets (32
bits). An address begins with a network number,
followed by local address (called the "rest"
field). - For example,
- 11000000.10101000.01111011.10000100 -- IP address
(192.168.123.132) - 11111111.11111111.11111111.00000000 -- Subnet
mask (255.255.255.0) - Â
24Internet Protocol - RFC 791, STD 5
An example of subnetting The subnet mask
255.255.255.192 gives you four networks of 62
hosts each. This works because in binary
notation, 255.255.255.192 is the same as
1111111.11111111.1111111.11000000. The first
two digits of the last octet become network
addresses, so you get the additional networks
00000000 (0), 01000000 (64), 10000000 (128) and
11000000 (192). 192.168.123.1-62 /
192.168.123.65-126 / 192.168.123.129-190 /
192.168.123.193-254
25ICMP - RFC 792, STD 5
- Internet Control Message Protocol
- ICMP travels directly within the IP datagram, so
like UDP is unreliable - ICMP is used by TCP/IP to relay connectivity
information - As packets travel through the network, the TTL is
decreased on every hop. When the TTL reaches 0, a
TTL exceeded message is sent to the sending
host. - Ping is an ICMP echo and ICMP reply
- Traceroute can be either be UDP-based or
ICMP-based both look for TTL expired or
Destination Unreachable messages - Â
26IPv6 - RFC 2460, Draft Standard
- IPv6
- IPv6 over Ethernet described in RFC 2464.
- Â
- 128-bit IP addressing, vs. 32-bit
- New unicast and broadcasting methods
- Allows for hex in IP addresses
- Built-in QoS (Flow Label)
- Default MTU of 1280 bytes vs. 576 bytes
- MTU Size Error Feedback from routing hosts
- MTU Discovery
27IPv6 - RFC 2460, Draft Standard
IPv6 Header
- Version IPv6 version number.
- Priority 4-bit Internet traffic priority
delivery value - Flow Label 24-bit field, special router handling
- Payload Length 16-bit unsigned integer. Length
of payload, i.e., the rest of the packet
following the IPv6 header, in octets. - Next Header 8-bit selector. Identifies the type
of header immediately following the IPv6 header.
Uses the same values as the IPv4 Protocol field. - Hop Limit 8-bit unsigned integer (TTL)
- Source Address 128 bits. The address of the
initial sender of the packet. - Destination Address 128 bits. The address of the
intended recipient of the packet (possibly not
the ultimate recipient, if an optional Routing
Header is present).
28IPv6 - RFC 2460, Draft Standard
- Addressing Architecture - RFC 2373
- IPv6 Unicast - a single address identifying a
single interface - Â
- Global unicast - publicly routable address
(2000/3) - Link-local - private, non-routable addresses
(FE80/10) - Unique local - private addressing, with the
addition of being unique. Analogous to 192.x,
etc. (FC00/7) - Multicast - similar to the IPv4 broadcast address
(FF00/8) - Anycast - single address assigned to multiple
nodes - Â
- RFC 4291 describes the Addressing specification
29IPv6 Unicast Address Format - RFC 3587
For example, the following addresses 2001DB800
8800200C417A - unicast addressFF0100000
0101 - multicast address00000001 -
loopback address00000000 - unspecified
addressmay be represented as2001DB8880020
0C417A - unicast addressFF01101 - multicast
address1 - loopback address - unspecified
address
30Interior Gateway Protocols
- Interior Gateway Protocols are used within larger
Autonomous Systems. - Distance-vector routing protocol RIP
- RIP (Routing Information Protocol) is a
widely-used protocol for managing router
information within a self-contained network such
as a LAN. - Link-state routing protocol OSPF
- Using OSPF,
- Changes are immediately multicast
- OSPF bases its path descriptions on "link states"
- OSPF also lets the user assign weights
- OSPF supports a variable network subnet mask
- With RIP, the routing table is sent to a neighbor
host every 30 seconds. OSPF multicasts only when
a change has taken place.
31Border Gateway Protocol (RFC 4271)
- The primary function of a BGP speaking system is
to exchange network reachability information with
other BGP systems. This network reachability
information includes information on the list of
Autonomous Systems (ASes) that reachability
information traverses. - Routing information exchanged via BGP supports
only the destination-based forwarding paradigm,
which assumes that a router forwards a packet
based solely on the destination address carried
in the IP header of the packet. - BGP uses TCP
32Border Gateway Protocol (RFC 4271)
33Border Gateway Protocol (RFC 4271)
http//www.isoc.org/tools/blogs/ispcolumn/?p67
34Border Gateway Protocol (RFC 4271)
http//www.isoc.org/tools/blogs/ispcolumn/?p67
35Border Gateway Protocol (RFC 4271)
One potential explanation of this data is that
the underlying inter-AS topology of the Internet
in IPv4 is very stable, and much of the churn in
routing may be attributable to the effects of
other measures, such as traffic engineering or
local efforts to optimise certain aspects of
routing policies.
http//www.isoc.org/tools/blogs/ispcolumn/?p67
36Conclusion