COM S 519: Computer Networks Introduction and Overview Jeanna Matthews Spring 2002.
-
Upload
kathryn-mosley -
Category
Documents
-
view
215 -
download
0
description
Transcript of COM S 519: Computer Networks Introduction and Overview Jeanna Matthews Spring 2002.
COM S 519:Computer Networks
Introduction and OverviewJeanna MatthewsSpring 2002
Why study computer networks?They are engineering marvels!
Scalability, layered protocols, lots of subtleties- worthy of study
They are all around us! Understanding the nuts and bolts behind
a technology you use every day is excitingThey are changing the world!
Profound societal changes taking place in our lifetime
How much do you know already ?
How much do you know about what happens when you use networking applications?
What do you hope to learn in this class?
Internet: Example Click -> get page page from local
or remote computer link:
http://www.cnn.com
specifies - protocol (http) - location (www.cnn.com)
Internet: Locating Resource www.cnn.com is the
name of a computer (and, implicitly, of a file in that computer)
To find the address, the application uses a hierarchical directory service called theDomain Name System to translate human readable names to IP addresses
loca l
com
host
cnn.com ?
cnn.com ?IP = a .b.c .d
IP = a .b .c.d
Internet: ConnectionThe protocol (http) sets up a connection
(another protocol, tcp) between the host and cnn.com to transfer the page
The connection transfers the page as a byte stream, without errors: flow control + error control
Host cnn .com
Internet: End-to-end The byte stream flows
from end to end across many links and switches: routing (+ addressing)
That stream is regulated and controlled by both ends: retransmission of erroneous or missing bytes; flow control
H O ST
CN N .C O M
end-to -end pacing anderror con tro l
routing
Internet: Packets The network transports
bytes grouped into packets
The packets are “self-contained” and routers handle them one by one
The end hosts worry about errors and pacing:Destination sends ACKsSource checks losses
C
H O S T: B
C N N .C O M : AA | B | # , C R C | bytes
B : toC
Internet: Port NumbersWhen a packet arrives at its
destination, the operating system uses the destination port number to identify which application should receive it.
This is called demultiplexing.
Internet: Bits Equipment in each node sends the packets as a string of
bits That equipment is not aware of the meaning of the bits
01011...011...110
Transm itter P hysica l M ed ium Rece ive r
01011...011...110
O ptica lC opperW ire less
Internet: Points to remember
Separation of tasks send bits on a link: transmitter/receiver [clock,
modulation,…] send packet on each hop [framing, error detection,…] send packet end to end [addressing, routing] pace transmissions [detect congestion] retransmit erroneous or missing packets [acks, timeout] find destination address from name [DNS]
Scalability routers don’t know full path names and addresses are hierarchical
Internet :how does it do:
Addressing ?Routing ?Reliable transmission ?Interoperability ?Resource management ?Quality of service ?
Concepts at the heart of the InternetProtocolLayered ArchitecturePacket SwitchingDistributed ControlOpen System
ProtocolIf two entities are going to
communicate, they must agree on the expected order and meaning of messages they exchange.
Asking for the time protocol
Protocol
A protocol defines the format and the order of messages exchanged between communicating entities as well as the actions taken on the receipt or the transmission of a message.
Layered ArchitecturesHuman beings are able to handle lots of
complexity in their protocol processing. Ambiguously defined protocols Many protocols all at once
How do computers manage complex protocol processing? Specify well defined protocols to enact. Decompose complicated jobs into layers that
each have a well defined task
Layered Architectures
Break-up design problem intro smaller, more manageable problems.
Modular design: easy to extend/modify.Difficult to implement (careful with
interaction of layers for efficiency).
Layered Architecture
Applications
Middleware
Routing
Physical Links
usersnetwork
Web, e-mail, file transfer, ...
Reliable/ordered transmission, QOS,security, compression, ...
End-to-end transmission,resource allocation, routing, ...
Point-to-point links,LANs, radios, ...
Internet protocol stack
Application
Transport
Network
Physical
usersnetwork
HTTP, SMTP, FTP, TELNET, DNS, …
TCP, UDP.
IP
Point-to-point links,LANs, radios, ...
Air travel
Ticket (purchase)
Baggage (check)
Gates (load)
Runway (take off)
Passenger Origin
Ticket (complain)
Baggage (claim)
Gates (unload)
Runway (landing)
Passenger Destination
Airplane routing
Protocol stack
e-mail client
TCP server
IP server
ethernetdriver/card
user X
SMTP
TCP
IP
e-mail server
TCP server
IP server
ethernetdriver/card
user Y
IEEE 802.3 standard
electric signals
English
Protocol encapsulation
e-mail client
TCP server
IP server
ethernetdriver/card
user X
e-mail server
TCP server
IP server
ethernetdriver/card
user Y“Hello”
“Hello”
“Hello”
“Hello”
“Hello”
Protocol interfaces
e-mail client
TCP server
IP server
ethernetdriver/card
user X
e-mail server
TCP server
IP server
ethernetdriver/card
user Y
s = open_socket();socket_write(s, buffer);…
Packet SwitchingPackets indicate their destination No predetermined path for a packet
to takeEach intermediate note routes the
packet closer to its destination
A small Internet
A
V
R
B
W
r1,e1r2,e2
r3
a,e3
w,e5 b,e4Scenario:A wants to send datato B.
Protocol stack:packet forwarding
HTTP
TCP
IP
ethernet
Host A
IP
ethernet
Router R
link
HTTP
TCP
IP
ethernet
Router WHost B
IP
ethernetlink
Distributed ControlWhere ever possible decompose the
problem Examples:
No one central name to IP address data base - Domain Name System
No one global routing table - Heirarchical network of networks – handle routing within small autonomous systems
Essential to Scalability
Open SystemBasic Internet protocols are
published as open standardsStandards freely and readily
available Ideal candidate for study
Internet Standards ProcessInternet Draft - anyoneRFC - at discretion of RFC EditorInternet Standard Maturity Levels
Proposed - IESG Draft - 2 independent, implementations Standard
How is Internet “governed”?“We reject kings, presidents, and voting.
We believe in rough consensus and running code”
Internet Engineering Task Force (IETF)Working groupsInternet Engineering Steering Group (IESG)Internet Assigned Numbers Authority
(IANA)
Backbones, NAPs and ISPsWould have had time to add this
here
Online ResourcesISOCACMCAIDAInternet HistoryW3C