Key networking concepts, part 1
Download
Report
Transcript Key networking concepts, part 1
• Review the key networking concepts
–
–
–
–
–
–
TCP/IP reference model
Ethernet
Switched Ethernet
IP, ARP
TCP
DNS
FTP data can be infinitely large, when do we chop it into smaller
Units?
• Internetworking devices
– Repeaters: PHY device that restores data and collision
signals
– Hub: Multiport repeater
– Bridge: Datalink layer device connecting two or more
collision domains (extended LAN). MAC multicasts are
propagated throughout the extended LAN
– Switch: Multiport bridge with parallel paths
– Router: Network layer device.
– Network address translator (NAT): Transport layer
device.
– Gateways: Transport layer or application layer devices
• Ethernet
– Shared medium LAN technology
– Need medium access control
• CSMA/CD + binary exponential backoff
– Frame format:
|Preamble|Start|Dst Addr|Src Addr|length| Data | Pad |Checksum
7
1
6
6
2
0-1500 0-46
• Minimum data + pad length: 46 bytes
• Maximum data length: 1500 bytes
4
• Fast Ethernet (100Mbps)
– Reduce cable length and keep everything else
– Duplex mode
• Gigabit Ethernet (1000Mbps)
– Reduce cable length and increase minimum
frame size
– Duplex mode
• Switched Ethernet
– Get dedicated link in Ethernet in a transparent
manner.
– Issue: the switch needs to know where to
forward a packet
– How is it accomplished?
• Self-learning algorithm to obtain the location of
each machine
• Forwarding algorithm
– Can switched Ethernet take advantage of the
dense connectivity in the network topology?
• Spanning tree algorithm
• IP
– Addressing
(type, network number, host number)
• Class A, Class B, Class C
– Classless inter-domain routing
• IP address + prefix length
e.g. 192.168.0.3/22
• IP header format:
– Version (4 bits): IPv4, IPv6
– Header length (4 bits): in 32-bit words, min
header is 5 words or 20 bytes
– Type of service (8 bits): reliability, precedence,
delay, and throughput. Used in DiffServ (IP
QoS support)
– Total length (16 bits): header + data in bytes,
total must less than 64 KB.
– Identifier (16 bits): uniquely identify the
datagram during its life for a given source and
destination addess.
• IP header format:
–
–
–
–
–
–
–
–
–
Flags (3 bits): more flag, no-fragmentation
Fragment offset (13 bits): in units of 8 bytes
Time to live (TTL): specified in router hops
Protocol: next level protocol to receive the data
Header checksum: 1’s complement sum of all 16 bit
words in the header
Source/destination address: original source/destination
Options (variable): Security, source route, record route,
timestamp recording
Padding (variable): makes header length a multiple of 4
Data (variable): data + header <= 65535 bytes.
• IP functionality:
– Framentation
– Addressing
– Routing is done by other protocols
• IP router
– Routing: computes the next hop for each
destination.
– Forwarding: based on the destination address in
an IP packet, forward the packet to the right
next hop
• Longest prefix matching
• Internet Routing protocols
– RIP: distance vector algorithm
– OSPF: link state algorithm
– BGP: path vector algorithm that supports policy
based routing
TCP segment
structure
32 bits
URG: urgent data
(generally not used)
ACK: ACK #
valid
PSH: push data now
(generally not used)
RST, SYN, FIN:
connection estab
(setup, teardown
commands)
Internet
checksum
(as in UDP)
source port #
dest port #
sequence number
acknowledgement number
head not
UA P R S F
len used
checksum
Receive window
Urg data pnter
Options (variable length)
application
data
(variable length)
counting
by bytes
of data
(not segments!)
# bytes
rcvr willing
to accept
• TCP header
– Source port (16 bits): identifies the source
process. 20=FTP, 23=Telnet, 80=HTTP.
– Destination port (16 bits)
– Sequence Number (32 bits): Sequence number
of the first byte in the segment. If SYN is
present, this is the initial sequence number
(ISN) and the first data byte is ISN+1
– ACK number (32 bits): Next byte expected
– Data offset (4 bits): number of 32-bit words in
header
– Reserved (6 bits)
• TCP header
– Control (6 bits):
•
•
•
•
•
•
URG urgent pointer field significant
ACK: ACK field significant
PSH: push function
RST: reset the connection
SYN: synchronize the sequence number
FIN: no more data from sender
– Window (16 bits): wil accept [ack] to
[ack+window]
– Checksum (16 bits): cover the header plus a
pseudo header.
• TCP header
– Urgent pointer (16 bits): points to the byte
following urgent data.
– Options (variable): max segment size, window
scale factor, etc.
• Each computer has a name resolver routine
(gethostbyname in UNIX)
• Each resolver knows the name of a local
DNS server
• Resolver sends a DNS request to the server
• DNS server either gives the answer,
forwards the request to another server, or
gives a referral
– Recursive query / iterative query
• Referral = next server to whom the request
should be sent