1 some snapshots rocky k. c. chang 8 september 2008

41
1 Some Snapshots Rocky K. C. Chang 8 September 2008

Post on 22-Dec-2015

226 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

1

Some Snapshots

Rocky K. C. Chang8 September 2008

Page 2: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

2

What is this course about? Internet Protocol (IP)

Addressing (identifiers) Encapsulation (“message” units) Routing and forwarding

Additional considerations Reliability and others (TCP) Congestion control (TCP and router-based mechanisms) Scale: two-layer of routing (BGP and OSPF), addressing

aggregation, fast packet forwarding Autonomous systems: policy routing Security

Page 3: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

3

What is this course about?

Other issues Protocol correctness vs. protocol performance Inter-layer interaction (Web and TCP) Design principles underlying these networking

protocols Design philosophy for the Internet

infrastructure

Page 4: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

4

What do you think?

Is Internet working today? Will Internet work tomorrow? If not, what will be the consequences? What is the Internet?

Page 5: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

5

What is the Internet? A set of growing networked elements

providing connectivity and services. No one knows exactly how the Internet

looks like. No one knows exactly where the boundary

of the Internet is. No one knows exactly how and how fast

the Internet grows. No one knows for sure that the Internet

will continue to work tomorrow.

Page 6: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

6

What is the Internet? Internet is a network of networks (network

integration). Started off as an experimental packet-

switched network Packet switching (vs. circuit switching and

message switching) 4-node ARPANET BBN Create a logical network on top of different

physical networks.

Page 7: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

7

Internet protocols Protocol: A formal description of message

formats and the rules two computers must follow to exchange those messages.

Each protocol defines two interfaces: Service interface defines the operations that

local objects can perform on the protocol. Peer interface defines the form and meaning of

messages exchanged between protocol peers to implement the communication service.

Page 8: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

8

Internet protocols

Protocol entity

Protocol entity

Message format and

interpretation

ServicesServices

Protocol entity

Protocol entity

Message format and

interpretation

ServicesServices

Page 9: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

9

TCP/IP protocol suite Internet protocol suite, or TCP/IP protocol

suite TCP/IP becomes the de facto standard for open

system networking less than ten years ago (replaced the OSI protocol).

No one owns the TCP/IP technology The Internet Architecture Board (IAB) (www.iab.org) The Internet Engineering Task Force (IETF)

(www.ietf.org) The Internet Corporation for Assigned Names and

Numbers (ICANN) (www.icann.org)

Page 10: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

10

TCP/IP protocol suite A four-layer model (hour-glass)

The hour-glass model is everywhere.

FTP HTTP NV TFTP

TCP UDP

IP

NET1 NET2 NETn

Application

Transport

Network

Data-link

Page 11: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

11

TCP/IP protocol suite In real life,

IPv4

TCP UDP

ARPICMPv4

IGMP

EthernetATMPPP

IPv6

DNSFTP Telnet SMTPHTTP1.0

/1.1

DVMRPPIM

RIP-I/II

OSPF

BGP SNMP DHCP

FDDI

RTP

RTSP SIP X.500

ICMPv6

RSVP

Cable Satellite SONETFrameRelay

IPSec

TLS

IPSec intunnelmode

Data-link

Network

Transport

Application

IEEE802.11

Bluetooth

Page 12: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

12

Milestones

Page 13: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

13

Recent developments

From file transfer, remote login, etc. to IP telephony, IP storage, IP TV, etc

From data networks to wireless / satellite / mobile /cable /optical / power networks

From tens of thousands of hosts to tens of millions of hosts

From bursty data traffic to QoS-sensitive traffic

From secure to insecure Internet

Page 14: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

14

The internetworking problem Problem: How to interconnect heterogeneous

networks effectively? Interconnect homogeneous networks directly,

e.g., Multiple Ethernet LAN segments Multiple Fibre Channels Multiple Token Rings Two wireless LANs …

Switching / bridging LAN switches Transparent bridging, spanning tree algorithm and

source routing

Page 15: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

15

The internetworking problem Interconnect heterogeneous networks

directly, e.g., DIX Ethernet with IEEE Ethernet Ethernet with Token Ring Wired LAN with wireless LAN

Three problems with interconnection at data-link layer: Do not scale to the number of data-link

technologies. Do not scale to the number of hosts

(networks). Do not have a common addressing space.

Page 16: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

16

The internetworking problem

S2

S1

H4

H5

H3H2H1

Network 2 (Ethernet)

Network 1 (Ethernet)

H6

Network 3 (FDDI)

Network 4(point-to-point)

H7 S3 H8

Page 17: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

17

Scaling to data-link technologies Conversion between frame structures. Scalability problem as the number of data-

link technologies supported increases, e.g.,

Ethernet

FDDI

PPPToken ring

Frame conversion

Page 18: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

18

Scaling to network size A switched LAN is a “flat” network---A

single broadcast frame reaches every LAN. VLAN can relieve this problem at the expense

of managing VLAN membership. Spanning tree protocol does not scale well

to network size. Take a longer time for the protocol to

converge. Take a longer time to respond to network state

changes.

Page 19: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

19

Uncommon MAC address spaces Different structures and number of bits

used in MAC address space Each address in a data-link technology

must be universally unique.

Page 20: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

20

A layer-3 solution to internetworking

R2

R1

H4

H5

H3H2H1

Network 2 (Ethernet)

Network 1 (Ethernet)

H6

Network 3 (FDDI)

Network 4(point-to-point)

H7 R3 H8

Page 21: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

21

IP: Scaling to data-link technologies

Ethernet

FDDI

PPPToken ring IP

Encapsulation and demultiplexing

Page 22: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

22

IP: Scaling to network size IP network uses hierarchies to achieve

scalability. There are at least three levels:

A single IP host (csultra6.comp.polyu.edu.hk) A IP subnet (four subnets in

comp.polyu.edu.hk) An autonomous system (polyu.edu.hk)

Page 23: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

23

IP: Uncommon MAC address spaces

Create a logical (unicast) address space to identify network interfaces.

Classes A-C for unicast and class D for multicast:

Network Host

7 24

0(a)

Network Host

14 16

1 0(b)

Network Host

21 8

1 1 0(c)

28

1 1 0(d) 1

Page 24: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

24

Directly connected IP hosts

IP

ETH

TCP

H1

IP

ETH

TCP

H2

FTP FTPFTP

TCP

IP

Ethernet protocol

Page 25: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

25

Indirectly connected IP hosts

R1

ETH FDDI

IPIP

ETH

TCP

R2

FDDI ETH

IP

H1

IP

ETH

TCP

H2

FTP FTPFTP

TCP

IP

FDDI protocol

Page 26: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

26

Encapsulation Data is processed at each layer through

the protocol stack, until it is sent as a stream of bits across the network.

Each layer adds information to the data by prepending headers (and sometimes trailers) to the data that it receives.

A lower-level protocol does not interpret the message it is given by some higher-level protocol.

Page 27: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

27

Encapsulation

IP

ETH

TCP

FTP

Appl. data

Appl. dataTCP hdr

Appl. dataTCP hdrIP hdr

Appl. dataTCP hdrIP hdrEth. hdr

user input

Send out to the network interface

Page 28: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

28

Demultiplexing

Appl. data

Appl. dataTCP hdr

Appl. dataTCP hdrIP hdr

Appl. dataTCP hdrIP hdrEth. hdr

Received from the network interface

Other nonIP network protocols

UDP-based applications

Other TCP-based application processes

Page 29: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

29

Internet addresses and port numbers

Each network interface has at least one IP address.

Both TCP and UDP use 16-bit port numbers to identify applications.

Servers are normally known by their well-known port numbers, usually between 1 and 1023.

Client ports are referred to ephemeral ports, i.e., short lived, which use port numbers above 1023.

Page 30: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

30

IP software at end hosts The IP software mainly consists of modules

for Application layer, such as DNS Transport layer: TCP, UDP Routing layer: IP, ICMP, and others. Data-link layer: MAC-IP-addresses binding

IP addresses MAC addresessHost namesDNS ARP

RARP

Page 31: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

31

An example

A HTTP client is running in m1.sun.com to connect to a HTTP server at www.sun.com.

The DNS client at m1.sun.com first obtains the IP address of www.sun.com.

The application data (HTTP+TCP) will then be encapsulated by an IP datagram with

www.sun.com m1.sun.com

140.20.1.1 140.20.1.2

Page 32: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

32

An example IP source address = 140.20.1.2 IP destination address = 140.20.1.1

Now m1.sun.com needs to run ARP to obtain the MAC address of www.sun.com’s network interface to the LAN.

The IP datagram is then encapsulated in an Ethernet frame with MAC source address = that of m1.sun.com MAC destination address = that of

www.sun.com

Page 33: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

33

IP Software at routers The software at routers is mainly used for

routing and datagram forwarding. Each router is running at least a “routing

protocol” to construct a routing (or forwarding) table. Each entry in a routing table consists of IP

destination address and the next-hop’s IP address.

Upon receiving a datagram, a router forwards it based on a set of forwarding rules and the routing table.

Page 34: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

34

Network programming Two most common network APIs: Sockets

and X/Open Transport Interface (XTI), a slight modification of AT&T’s Transport Layer Interface (TLI).

The APIs allows programmers to easily make “connections” with another application process, without knowing how the underlying network operates.

Page 35: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

35

Basic socket calls for a client

socket

connect

recvsend

peer

sockaddr_in{}

obtain a socket

establish a connection to the peer

receive and send data

Page 36: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

36

Basic socket calls for a server

socket

listen

recvsend

peer

sockaddr_in{}

obtain a socket

mark the socket as a listening socket

receive and send data

bind

accept

local

sockaddr_in{}bind the server’s IP address and port to the socket

accept new connections

Page 37: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

37

10 choices that were critical to the Internet’s

success

Page 38: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

38

10 right choices (by Scott Bradner)

1. Make it all work on top of existing networks (about networks, not a network).

2. Use packets, not circuits.3. Create a routing function.4. Split TCP and IP.5. The NSF funded the UC/Berkeley to put

TCP/IP into the Unix OS.6. CSNET connected with ARPANET (email

only).

Page 39: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

39

10 right choices (by Scott Bradner)

7. The NSF required users of the NSFNET to use TCP/IP.

8. Intl. telecomm standard bodies rejected TCP/IP, then created OSI.

9. The NSF created an “Acceptable Use Policy” restricting NSFNET use to noncommercial activities.

10. Once things started to build, government stayed mostly out of the way.

Page 40: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

40

Exercises this week Try out the following commands (with

various options) and network diagnosis tools: ipconfig netstat arp ping (ICMP, UDP, TCP, HTTP) traceroute (tracert, pathping, ICMP/TCP/UDP,

etc) wireshark

Page 41: 1 Some Snapshots Rocky K. C. Chang 8 September 2008

41

Acknowledgments URL for the 10 choices

http://www.interesting-people.org/archives/interesting-people/200209/msg00018.html