cs e551 : computer network review
Post on 23-Mar-2016
46 Views
Preview:
DESCRIPTION
TRANSCRIPT
CSE4471: Computer Network Review Network Layers TCP/UDP IP Ethernet
2
Internet Layers
application: supporting network applications ftp, smtp, http
transport: host-host data transfer tcp, udp
network: routing of datagrams from source to destination ip, routing protocols
link: data transfer between neighboring network elements ppp, ethernet
physical: bits “on the wire”
application
transport
network
link
physical
OSI Network Layers
4
Layering: logical communication applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical application
transportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
Each layer: distributed “entities”
implement layer functions at each node
entities perform actions, exchange messages with peers
5
Layering: physical communication applicationtransportnetwork
linkphysical
applicationtransportnetwork
linkphysical application
transportnetwork
linkphysical
applicationtransportnetwork
linkphysical
networklink
physical
data
data
6
Protocol layering and dataEach layer takes data from above adds header information to create new data unit passes new data unit to layer below
applicationtransportnetwork
linkphysical
source destination
MMMM
HtHtHnHtHnHl
MMMM
HtHtHnHtHnHl
messagesegmentdatagramframe
applicationtransportnetwork
linkphysical
7
Internet structure: network of networks
roughly hierarchical national/international
backbone providers (NBPs) e.g. BBN/GTE, Sprint, AT&T,
IBM, UUNet interconnect (peer) with each
other privately, or at public Network Access Point (NAPs)
regional ISPs connect into NBPs
local ISP, company connect into regional ISPs
NBP A
NBP B
NAP NAP
regional ISP
regional ISP
localISP
localISP
8
National Backbone Providere.g. Sprint US backbone network
TCP Transport Control Protocol Flow control and Responds to congestion Reliable In-order delivery “Nice” Protocol
TCP segment structure
source port # dest port #32 bits
applicationdata
(variable length)
sequence numberacknowledgement
numberrcvr window sizeptr urgent datachecksum
FSRPAUheadlen
notused
Options (variable length)
URG: urgent data (generally not used)
ACK: ACK #valid
PSH: push data now(generally not used)
RST, SYN, FIN:connection estab(setup, teardown
commands)
# bytes rcvr willingto accept
countingby bytes of data(not segments!)
Internetchecksum
(as in UDP)
Reliable Delivery Sender, Receiver keep track of bytes sent and
bytes received. Acks have an indication of next byte expected. Three duplicate acks considered a packet loss
- sender retransmits
TCP seq. #’s and ACKsSeq. #’s:
byte stream “number” of first byte in segment’s data
ACKs: seq # of next byte
expected from other side
cumulative ACKQ: how receiver handles
out-of-order segments A: TCP spec doesn’t
say, - up to implementer
Host A Host B
Seq=42, ACK=79, data = ‘C’
Seq=79, ACK=43, data = ‘C’
Seq=43, ACK=80
Usertypes
‘C’
host ACKsreceipt
of echoed‘C’
host ACKsreceipt of
‘C’, echoesback ‘C’
timesimple telnet scenario
TCP Flow Control Window based Sender cannot send more data than a window
without acknowledgements. Window is a minimum of receiver’s buffer and
‘congestion window’. After a window of data is transmitted, in
steady state, acks control sending rate.
Flow Control
UDP No reliability, flow control, congestion control. Sends data in a burst. Provides multiplexing and demultiplexing of
sources. Most multimedia applications using UDP
UDP: User Datagram Protocol [RFC 768]
“no frills,” “bare bones” Internet transport protocol
“best effort” service, UDP segments may be: lost delivered out of order to
app connectionless:
no handshaking between UDP sender, receiver
each UDP segment handled independently of others
Why is there a UDP? no connection
establishment (which can add delay)
simple: no connection state at sender, receiver
small segment header no congestion control: UDP
can blast away as fast as desired
UDP segment structure often used for streaming
multimedia apps loss tolerant rate sensitive
other UDP uses (why?): DNS SNMP
reliable transfer over UDP: add reliability at application layer application-specific error
recover!
source port # dest port #32 bits
Applicationdata
(message)
UDP segment format
length checksumLength, in
bytes of UDPsegment,including
header
IP datagram format
ver length
32 bits
data (variable length,typically a TCP
or UDP segment)
16-bit identifierInternet
checksumtime to
live32 bit source IP address
IP protocol versionnumber
header length (bytes)
max numberremaining hops
(decremented at each router)
forfragmentation/reassembly
total datagramlength (bytes)
upper layer protocolto deliver payload to
head.len
type ofservice
“type” of data flgs fragment offset
upper layer
32 bit destination IP addressOptions (if any) E.g. timestamp,
record routetaken, pecifylist of routers to visit.
ICMP: Internet Control Message Protocol
used by hosts, routers, gateways to communication network-level information error reporting:
unreachable host, network, port, protocol
echo request/reply (used by ping)
network-layer “above” IP: ICMP msgs carried in IP
datagrams ICMP message: type, code
plus first 8 bytes of IP datagram causing error
Type Code description0 0 echo reply (ping)3 0 dest. network unreachable3 1 dest host unreachable3 2 dest protocol unreachable3 3 dest port unreachable3 6 dest network unknown3 7 dest host unknown4 0 source quench (congestion control - not used)8 0 echo request (ping)9 0 route advertisement10 0 router discovery11 0 TTL expired12 0 bad IP header
Routing in the Internet
The Global Internet consists of Autonomous Systems (AS) interconnected with each other: Stub AS: small corporation Multihomed AS: large corporation (no transit) Transit AS: provider
Two-level routing: Intra-AS: administrator is responsible for choice: RIP,
OSPF Inter-AS: unique standard: BGP
21
Link Layer
22
Link Layer: setting the context two physically connected devices:
host-router, router-router, host-host unit of data: frame
applicationtransportnetwork
linkphysical
networklink
physical
MMMM
HtHtHnHtHnHl MHtHnHl
framephys. link
data linkprotocol
adapter card
23
Link Layer Services
Framing, link access: encapsulate datagram into frame, adding header, trailer implement channel access if shared medium, ‘physical addresses’ used in frame headers to identify
source, dest • different from IP address!
Reliable delivery between two physically connected devices: we learned how to do this already (chapter 3)! seldom used on low bit error link (fiber, some twisted
pair) wireless links: high error rates
• Q: why both link-level and end-end reliability?
24
Link Layer Services (more) Flow Control:
pacing between sender and receivers Error Detection:
errors caused by signal attenuation, noise. receiver detects presence of errors:
• signals sender for retransmission or drops frame Error Correction:
receiver identifies and corrects bit error(s) without resorting to retransmission
25
Multiple Access Links and Protocols
Three types of “links”: point-to-point (single wire, e.g. PPP, SLIP) broadcast (shared wire or medium; e.g,
Ethernet, Wavelan, etc.)
switched (e.g., switched Ethernet, ATM etc)
26
Multiple Access protocols single shared communication channel two or more simultaneous transmissions by nodes:
interference only one node can send successfully at a time
multiple access protocol: distributed algorithm that determines how stations share
channel, i.e., determine when station can transmit communication about channel sharing must use channel itself! what to look for in multiple access protocols:
• synchronous or asynchronous • information needed about other stations • robustness (e.g., to channel errors) • performance
27
Ethernet: uses CSMA/CD
A: sense channel, if idle then {
transmit and monitor the channel; If detect another transmission then { abort and send jam signal;
update # collisions; delay as required by exponential backoff algorithm; goto A}
else {done with the frame; set collisions to zero}}
else {wait until ongoing transmission is over and goto A}
28
Network Layer
Basic Functions
Representative Protocols
Security Vulnerability Examples
Application Providing services such as WWW to end-users
HTTP, SMTP, FTP JavaScript-based malware, Email spams
Transport End-to-end message transmission independent of the underlying network
TCP, UDP TCP SYN attack, UDP flooding attack
Network Routing IP, ICMP, RIP, OSPF, BGP IP spoofing,Black hole attack to RIP
Data Link Media access control Ethernet, Wi-Fi Eavesdropping attack
Physical Transmitting raw bit stream
Physical attack such as cut to cable
A Summary on Network Layers and Their Vulnerabilities
29
Acknowledgement Part of the slides are from Kurose and Ross’s book
“Computer Networking: A Top-Down Approach”.
top related