Internetworking Nov 19, 2002 Internetworking Nov 19, 2002
Topics Topics
- Client-server programming model
- Networks
- Internetworks
- Global IP Internet
IP addresses Domain names Connections
✁✄✂✄☎✝✆✄✆✟✞✄✠☛✡✌☞✍☞✏✎
15-213 The course that gives CMU its Zip! Internetworking - - PowerPoint PPT Presentation
15-213 The course that gives CMU its Zip! Internetworking Internetworking Nov 19, 2002 Nov 19, 2002 Topics Topics Client-server programming model Networks Internetworks Global IP Internet IP addresses Domain
IP addresses Domain names Connections
✁✄✂✄☎✝✆✄✆✟✞✄✠☛✡✌☞✍☞✏✎– 2 – 15-213, F’02
Client process Server process
handles request
handles response Resource
Note: clients and servers are processes running on hosts (can be the same or different hosts).
– 3 – 15-213, F’02
main memory I/O bridge MI ALU register file CPU chip system bus memory bus disk controller graphics adapter USB controller mousekeyboard monitor disk I/O bus Expansion slots network adapter network
– 4 – 15-213, F’02
Ethernet is most prominent example.
Typically high-speed point-to-point phone lines.
– 5 – 15-213, F’02
Each Ethernet adapter has a unique 48-bit address.
✑Hosts send bits to any other host in chunks called frames.
✑Hub slavishly copies each bit from each port to every other port.
✒Every host sees every bit.
host host host hub 100 Mb/s 100 Mb/s ports
– 6 – 15-213, F’02
host host host host host hub hub bridge 100 Mb/s 100 Mb/s host host hub 100 Mb/s 100 Mb/s 1 Gb/s host host host bridge host host hub A B C X Y
– 7 – 15-213, F’02
host host host ...
– 8 – 15-213, F’02
host host host LAN 1 ... host host host LAN 2 ... router router router WAN WAN
LAN 1 and LAN 2 might be completely different, totally incompatible LANs (e.g., Ethernet and ATM)
– 9 – 15-213, F’02
– 10 – 15-213, F’02
Header: contains info such as packet size, source and destination addresses. Payload: contains data bits sent from source host.
– 11 – 15-213, F’02
protocol software client LAN1 adapter Host A
data data PH FH1 data PH data PH FH2
LAN1 LAN2
data data PH FH1 data PH FH2 (1) (2) (3) (4) (5) (6) (7) (8) internet packet LAN2 frame
protocol software LAN1 adapter LAN2 adapter Router
FH1 LAN1 frame data PH FH2
protocol software server LAN2 adapter Host B
– 12 – 15-213, F’02
– 13 – 15-213, F’02
Provides basic naming scheme and unreliable delivery capability of packets (datagrams) from host-to-host.
Uses IP to provide unreliable datagram delivery from process- to-process.
Uses IP to provide reliable byte streams from process-to- process over connections.
– 14 – 15-213, F’02
TCP/IP Client Network adapter Global IP Internet TCP/IP Server Network adapter Internet client host Internet server host Sockets interface (system calls) Hardware interface (interrupts) User code Kernel code Hardware and firmware
– 15 – 15-213, F’02
– 16 – 15-213, F’02
– 17 – 15-213, F’02
– 18 – 15-213, F’02
– 19 – 15-213, F’02
NAP NAP Backbone Backbone Backbone Backbone NAP POP POP POP Regional net POP POP POP POP POP Small Business Big Business ISP POP POP POP POP Pgh employee
dialup
DC employee POP
T3 T1
ISP (for individuals) POP
dialup T1
Colocation sites Private “peering” agreements between two backbone companies
NAP
– 20 – 15-213, F’02
Source: Boardwatch.com Note: Peers in this context are commercial backbones..droh
– 21 – 15-213, F’02 Source: Boardwatch.com
– 22 – 15-213, F’02
– 23 – 15-213, F’02
E.g., the port number used to identify an Internet connection.
✧✩★ ✪✬✫✮✭✬✯✮✰✬✫✱✯✮✭ ✲✩✳✩✳✮✰✬✯✮✴✩✴ ✴✩✭✩✰✬✵✮✶✩✭✬✵✮✰✬✯ ★✩✧ ✴✩✭✱✰✬✵✮✶✩✭ ✷✬✫✬✸✮✲✩✳✩✳✮✰ ✹ ✵✩✫✮✴✩✷✬✺✩✫✩✯✩✳ ✷✬✫✮✭ ✴✻✸✮✲✩✳✩✳✮✰✽✼ ✧✩★ ✫✩✯✮✭✻✾✮✿✮✰✬❀ ❁✮❂✮✭✬✯ ✿✮✰✬✳✩✯✮✰ ❃❄❁✽✷✬✺✮❅✩✯✩✫✱✳✮✷✬✲✩✫❇❆ ★✩✧ ❈ ✼Handy network byte-order conversion functions:
❉✗❊ ✔✏❋✗●✥✚convert
convert
✓ ❉ ✔☛✖ ❊ ❍✏❋ ❊ from host to network byte order. ❋ ❊ ✔ ❉convert
convert
✓ ❉ ✔☛✖ ❊ ❍✏❋ ❊ from network to host byte order.– 24 – 15-213, F’02
IP address
❏✏❑✗▲☛❏☛❏☛▼✏◆✗▼☛❖☛▼ P ◗☛▼☛▲ ✢ ▼ ✢ ◗✗❘✏❙ ✢ ▼☛❙☛▼– 25 – 15-213, F’02
mil edu gov com cmu berkeley mit cs ece kittyhawk
128.2.194.242
cmcl unnamed root pdl imperial
128.2.189.40
amazon www
208.216.181.15
First-level domain names Second-level domain names Third-level domain names
– 26 – 15-213, F’02
– 27 – 15-213, F’02
and
✘☛✓➃✢❿❾➀❍ ❊ ✢➁✙☛➂☛✕ ◗☛▲ ✢✄➄ ▼ ✢ ◗ ✢✄➄and
✜☛✜☛✜✛✢ ➅ ✔☛●✥✢✟✘☛✔✝❾map to multiple IP addrs.
for example:
✘✝❾➀✘☛●❽✢✟✘☛✓✥✢✟✘✝❾✗✕➆✢➁✙☛➂☛✕– 28 – 15-213, F’02
– 29 – 15-213, F’02
– 30 – 15-213, F’02
– 31 – 15-213, F’02
Connection socket pair (128.2.194.242:51213, 208.216.181.15:80) Server (port 80) Client Client socket address 128.2.194.242:51213 Server socket address 208.216.181.15:80 Client host address 128.2.194.242 Server host address 208.216.181.15
– 32 – 15-213, F’02