wang xiaofei [email protected]/courses/2006_advanced_internet/handout/13....

20
MMLab Written by David Written by David D.Clark D.Clark MIT MIT Wang Xiaofei Wang Xiaofei [email protected] [email protected]

Upload: dinhkhuong

Post on 10-Mar-2018

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

MMLab

Written by David Written by David D.ClarkD.Clark MITMIT

Wang XiaofeiWang [email protected]@mmlab.snu.ac.kr

Page 2: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

ContentsContents

11 IntroductionIntroduction

22 Architecture GoalsArchitecture Goals

33 Datagrams & TCPDatagrams & TCP

44 ConclusionConclusion

Page 3: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

1.Introduction1.Introduction

DARPADARPA““Defense Advanced Research Project AgencyDefense Advanced Research Project Agency””•• TCP/IP was first proposed 15 years ago by DARPA.TCP/IP was first proposed 15 years ago by DARPA.•• The design philosophy has evolved considerably from The design philosophy has evolved considerably from

the first original proposal to the current standards.the first original proposal to the current standards.–– Datagram, Datagram, –– The layering of the architecture is divided into the IP and The layering of the architecture is divided into the IP and

TCP layersTCP layers

View the original objectives of the internet View the original objectives of the internet architecture and discuss the relation between architecture and discuss the relation between these goals and the features of the protocolthese goals and the features of the protocol

Page 4: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Fundamental goalFundamental goalto develop an effective technique for multiplexed to develop an effective technique for multiplexed utilization of existing interconnected networks.utilization of existing interconnected networks.•• Purpose at that time: to connect together the original Purpose at that time: to connect together the original

ARPANET with the ARPA packet radio network.ARPANET with the ARPA packet radio network.

to design a unified system which incorporated a to design a unified system which incorporated a variety of different transmission media:variety of different transmission media:•• A MultiA Multi--media Networkmedia Network

The technique selected for multiplexing The technique selected for multiplexing was was packet switchingpacket switching..

Page 5: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Packet switching Packet switching fundamental componentfundamental component•• 1.An alternative ( circuit switching ) could have been 1.An alternative ( circuit switching ) could have been

considered, but the applications were naturally served considered, but the applications were naturally served by the packet switching paradigm, and the networks by the packet switching paradigm, and the networks of the projects were packet switching networks.of the projects were packet switching networks.

•• 2.Technique of store and forward packet switching 2.Technique of store and forward packet switching was well understood. ( ARPANET )was well understood. ( ARPANET )

•• 3.The top level assumption was that networks would 3.The top level assumption was that networks would be interconnected by a layer of Internet packet be interconnected by a layer of Internet packet switches, which were called switches, which were called gatewaysgateways

Page 6: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

The fundamental Internet structure:The fundamental Internet structure:A A packetpacket--switched communications facilityswitched communications facility ;;A number of A number of distinguishable networksdistinguishable networks are are connected together using connected together using packet packet communications processorscommunications processors, called , called gatewaysgateways;;Gateways implement a Gateways implement a store and forward packet store and forward packet forwarding algorithmforwarding algorithm to make the communication.to make the communication.

•• TThe top level goal is he top level goal is ““effectiveeffective””, but what an effective , but what an effective interconnection must achieve?interconnection must achieve?

Page 7: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Second Level Goals: Second Level Goals: (sorted by (sorted by prioritiespriorities))

1.Must continue despite loss of networks or gateways1.Must continue despite loss of networks or gateways2.Must support multiple types of communications service2.Must support multiple types of communications service3.Must accommodate a variety of networks3.Must accommodate a variety of networks4.Must permit distributed management of its resources4.Must permit distributed management of its resources5.Must be cost effective5.Must be cost effective6.Must permit host attachment with a low level of effort6.Must permit host attachment with a low level of effort•• These goals are These goals are in order of importancein order of importance..•• Different network architectures require different order.Different network architectures require different order.

–– E.g. If a network is designed to operate in military context, thE.g. If a network is designed to operate in military context, the e survivability will be a first goal, and accountability may be a survivability will be a first goal, and accountability may be a last last goal.goal.

Page 8: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Survivability in the face of failureSurvivability in the face of failure•• Internet should go on supplying communications Internet should go on supplying communications

service, even though some gateways or networks are service, even though some gateways or networks are failing.failing.

–– Without having to reestablish or reset the high level state of Without having to reestablish or reset the high level state of their conversation.their conversation.

–– Synchronization between sender and receiver would never be Synchronization between sender and receiver would never be lost unless there was no physical path.lost unless there was no physical path.

•• The architecture was to mask completely any transient The architecture was to mask completely any transient failure.failure.

•• OnOn--going conversation must be protectedgoing conversation must be protected–– replicated transmission.replicated transmission.

Page 9: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Types of ServiceTypes of Service•• Should support, at the transport service level, a Should support, at the transport service level, a

variety of types of service.variety of types of service.–– E.g. E.g.

»» remote login requires a service with low delay but low remote login requires a service with low delay but low requirements for bandwidthrequirements for bandwidth

»» File transfer was less concerned with delay, but very File transfer was less concerned with delay, but very concerned with high throughput.concerned with high throughput.

–– TCP attempted to provide both.TCP attempted to provide both.

•• But it is too difficult to build support for all types of But it is too difficult to build support for all types of service into one protocol.service into one protocol.

–– TCP doesnTCP doesn’’t support well:t support well:»» Debugger protocol.Debugger protocol.»» RealReal--time delivery service.time delivery service.

Page 10: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

•• More than one transport service would be required, so More than one transport service would be required, so the architecture must be prepared to tolerate the architecture must be prepared to tolerate simultaneously transports which wish to constrain simultaneously transports which wish to constrain reliability, delay, or bandwidth, at a minimum.reliability, delay, or bandwidth, at a minimum.

–– TCP and IP, which had been originally a single protocol, TCP and IP, which had been originally a single protocol, now is separated into 2 layers.now is separated into 2 layers.

•• TCP provides one particular type of service, the TCP provides one particular type of service, the reliable sequenced data streamreliable sequenced data stream

»» UDP provides a application level interface to the basic UDP provides a application level interface to the basic datagram service of internetdatagram service of internet

•• IP attempt to provide a basic building block IP attempt to provide a basic building block ( ( datagramdatagram ) out of which a variety of types of service ) out of which a variety of types of service could be builtcould be built

Page 11: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Varieties of NetworksVarieties of Networks•• Be able to incorporate and utilize a wide variety of Be able to incorporate and utilize a wide variety of

network technologies, including military and network technologies, including military and commercial facilities.commercial facilities.

»» ARPANET, X.25, broadcast satellite nets, LAN, etcARPANET, X.25, broadcast satellite nets, LAN, etc……

Internet architecture achieves the flexibility by:Internet architecture achieves the flexibility by:–– Assume that the net can transport a packet or datagram.Assume that the net can transport a packet or datagram.

»» of reasonable size, reasonable reliability.of reasonable size, reasonable reliability.–– The net must have suitable form of addressing.The net must have suitable form of addressing.

•• The net can support these assumption directly, or by The net can support these assumption directly, or by network interface software.network interface software.

Page 12: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Other GoalsOther GoalsDistributed management :Distributed management :•• Several different management centerSeveral different management center•• Each operating a subset of the gateways.Each operating a subset of the gateways.•• TwoTwo--tier routing algorithm tier routing algorithm

•• Lack of sufficient tools for distributed management.Lack of sufficient tools for distributed management.–– One change of future internet architecture will probably be One change of future internet architecture will probably be

the development of a new generation of tools for the development of a new generation of tools for management of resources in the context of multiple management of resources in the context of multiple administrations.administrations.

Page 13: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

2.Architecture Goals2.Architecture Goals

Cost effective :Cost effective :•• Not tailored, not efficiency.Not tailored, not efficiency.

–– Headers of a packet is fairly longHeaders of a packet is fairly long–– RetransmissionRetransmission

AccountabilityAccountability•• Only now being studied, few tools for accounting for Only now being studied, few tools for accounting for

packet flowspacket flows

Page 14: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

3.Datagrams & TCP3.Datagrams & TCP

DatagramsDatagrams•• 1.They eliminate the need for connection state within 1.They eliminate the need for connection state within

the intermediate switching the intermediate switching nodwsnodws–– Internet can be reconstituted after a failure without concern Internet can be reconstituted after a failure without concern

about state.about state.

•• 2.They provide a basic building block out of which a 2.They provide a basic building block out of which a variety of types of service can be implementedvariety of types of service can be implemented

•• 3.They represent the minimum network service 3.They represent the minimum network service assumption, which has permitted a wide variety of assumption, which has permitted a wide variety of networks to be incorporated into various internet networks to be incorporated into various internet realizations.realizations.

–– It is wrong to say that the motivation for datagrams is the It is wrong to say that the motivation for datagrams is the support of a higher level service.support of a higher level service.

Page 15: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

3.Datagrams & TCP3.Datagrams & TCP

TCP TCP Flow control based on bytes or packets?Flow control based on bytes or packets?»» TCP chose to TCP chose to regulate the delivery of bytesregulate the delivery of bytes»» Flow control and ACK in TCP is thus based on byte number Flow control and ACK in TCP is thus based on byte number

rather than packet number.rather than packet number.–– 1.to permit the insertion of control information into the 1.to permit the insertion of control information into the

sequence space of the bytes, so that control as well as data sequence space of the bytes, so that control as well as data could be acknowledged.could be acknowledged.

–– 2.to permit the TCP packet to be broken up in to smaller 2.to permit the TCP packet to be broken up in to smaller packets if necessary in order to fit through a net with a small packets if necessary in order to fit through a net with a small packet size.packet size.

–– 3.to permit a number of small packets to be gathered 3.to permit a number of small packets to be gathered together into one larger packet in the sending host if together into one larger packet in the sending host if retransmission of the data was necessary.retransmission of the data was necessary.

»» Correct design may have been to use both packets and bytes Correct design may have been to use both packets and bytes for the control, just as ARPANET didfor the control, just as ARPANET did..

Page 16: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

3.Datagrams & TCP3.Datagrams & TCP

EndEnd--OfOf--Letter flag, ( EOL )Letter flag, ( EOL )–– Vanished from protocol, replaced by Push flag, ( PSH )Vanished from protocol, replaced by Push flag, ( PSH )

•• To break the byte stream into recordsTo break the byte stream into records•• The data up to this point in the stream is one or more The data up to this point in the stream is one or more

complete applicationcomplete application--level elements.level elements.•• The buffer is returned to the user either when it is full, The buffer is returned to the user either when it is full,

or an EOL is received.or an EOL is received.•• EOL should be tool for mapping the byte stream to the EOL should be tool for mapping the byte stream to the

buffer management of the host.buffer management of the host.

Page 17: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

4.Conclusion4.Conclusion

In the context of its priorities, the In the context of its priorities, the Internet architecture is successful.Internet architecture is successful.Datagram has served very well in Datagram has served very well in solving the most important goals.solving the most important goals.

•• Most datagrams are a part of some sequence of Most datagrams are a part of some sequence of packets from source to destination, rather than packets from source to destination, rather than isolated units at the application level.isolated units at the application level.

•• Gateway cannot directly see the existence of this Gateway cannot directly see the existence of this sequence. It is forced to deal with each packet in sequence. It is forced to deal with each packet in isolation.isolation.

•• Resource management decisions or accounting must Resource management decisions or accounting must be don on each packet separately.be don on each packet separately.

Page 18: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

4.Conclusion4.Conclusion

A better building block for the next A better building block for the next generation of architecture.generation of architecture.

““FlowFlow””•• Identify a sequence of packets traveling from the Identify a sequence of packets traveling from the

source to the destination, without assuming any source to the destination, without assuming any particular type of service with that service.particular type of service with that service.

•• Gateway can have flow state in order to know the Gateway can have flow state in order to know the nature of the flows. But the state info is not critical in nature of the flows. But the state info is not critical in maintaining the desired type of service. That type of maintaining the desired type of service. That type of service would be enforced by the end points, by service would be enforced by the end points, by sending periodically message to ensure the proper sending periodically message to ensure the proper type of service is being associated with the flowtype of service is being associated with the flow

•• ““Soft stateSoft state””–– survivability & flexibility, management & accountabilitysurvivability & flexibility, management & accountability

»» CCurrent research within the DARPA Internet Programurrent research within the DARPA Internet Program

Page 19: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

[email protected]

MMLab

ReferenceReference

The original vision of TCP came from The original vision of TCP came from Robert KahnRobert Kahn and and Vinton Vinton CerfCerf, who saw , who saw very clearly, back in 1973, how a very clearly, back in 1973, how a protocol with suitable features might be protocol with suitable features might be the glue that would pull together the the glue that would pull together the various emerging network technologies.various emerging network technologies.They guided the DARPA in early days to They guided the DARPA in early days to the point how TCP/IP became standards.the point how TCP/IP became standards.Universities, research laboratories, Universities, research laboratories, corporations.corporations.

Page 20: Wang Xiaofei dobby@mmlab.snu.acmmlab.snu.ac.kr/courses/2006_advanced_internet/handout/13. Design... · Wang Xiaofei dobby@mmlab.snu.ac ... to connect together the original ARPANET

MMLab

[email protected]@mmlab.snu.ac.kr