home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- Network Working Group R. Clark
- Request for Comments: 1683 M. Ammar
- Category: Informational K. Calvert
- Georgia Institute of Technology
- August 1994
-
-
- Multiprotocol Interoperability In IPng
-
- Status of this Memo
-
- This memo provides information for the Internet community. This memo
- does not specify an Internet standard of any kind. Distribution of
- this memo is unlimited.
-
- Abstract
-
- This document was submitted to the IETF IPng area in response to RFC
- 1550. Publication of this document does not imply acceptance by the
- IPng area of any ideas expressed within. Comments should be
- submitted to the big-internet@munnari.oz.au mailing list.
-
- 1. Executive Summary
-
- The two most commonly cited issues motivating the introduction of
- IPng are address depletion and routing table growth in IPv4. Further
- motivation is the fact that the Internet is witnessing an increasing
- diversity in the protocols and services found in the network. When
- evaluating alternatives for IPng, we should consider how well each
- alternative addresses the problems arising from this diversity. In
- this document, we identify several features that affect a protocol's
- ability to operate in a multiprotocol environment and propose the
- incorporation of these features into IPng.
-
- Our thesis, succinctly stated, is: The next generation Internet
- Protocol should have features that support its use with a variety of
- protocol architectures.
-
- 2. Introduction
-
- The Internet is not a single protocol network [4]. While TCP/IP
- remains the primary protocol suite, other protocols (e.g., IPX,
- AppleTalk, OSI) exist either natively or encapsulated as data within
- IP. As new protocols continue to be developed, we are likely to find
- that a significant portion of the traffic in future networks is not
- from single-protocol communications. It is important to recognize
- that multiprotocol networking is not just a transition issue. For
- instance, we will continue to see tunneling used to carry IPX traffic
-
-
-
- Clark, Ammar & Calvert [Page 1]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- over the Internet between two Novell networks. Furthermore, the
- introduction of IPng is not going to result in a near term
- elimination of IPv4. Even when IPng becomes the primary protocol
- used in the Internet, there will still be IPv4 systems in use. We
- should consider such multiprotocol uses of the network as we design
- future protocols that can efficiently handle mixed protocol traffic.
-
- We have identified several issues related to the way in which
- protocols operate in a multiprotocol environment. Many of these
- issues have traditionally been deemed "less important" by protocol
- designers since their goal was to optimize for the case where all
- systems supported the same protocol. With the increasing diversity
- of network protocols, this approach is no longer practical. By
- addressing the issues outlined in this paper, we can simplify the
- introduction of IPng to the Internet and reduce the risk for network
- managers faced with the prospect of supporting a new protocol. This
- will result in a faster, wider acceptance of IPng and increased
- interoperability between Internet hosts. In addition, by designing
- IPng to address these issues, we will make the introduction of future
- protocols (IPng2) even easier.
-
- The outline for this document is as follows. In Section 3 we
- motivate the issues of multiprotocol networking with a discussion of
- an example system. In Section 4 we describe three main techniques
- for dealing with multiple protocols. This is followed in Section 5
- by a description of the various protocol features that are important
- for implementing these three techniques. We conclude in Section 6
- with a summary of the issues raised.
-
- 3. Multiprotocol Systems
-
- Consider the multiprotocol architecture depicted in Figure 1. A
- system supporting this architecture provides a generic file-transfer
- service using either the Internet or OSI protocol stacks. The
- generic service presents the user with a consistent interface,
- regardless of the actual protocols used. The user can transfer files
- between this host and hosts supporting either of the single protocol
- stacks presented in Figures 2a and 2b. To carry out this file
- transfer, the user is not required to decide which protocols to use
- or to adjust between different application interfaces.
-
-
-
-
-
-
-
-
-
-
-
- Clark, Ammar & Calvert [Page 2]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- +-----------------------------------+
- | File Transfer Service |
- +-----------+-----------------------+
- | | FTAM |
- | +-----------------------+
- | FTP | ISO 8823 |
- | +-----------------------+
- | | ISO 8327 |
- | +-----------+-----------+
- | |TP0/RFC1006| TP4 |
- +-----------+-----------+ |
- | TCP | |
- +-----------+-----------+-----------+
- | IP | CLNP |
- +-----------+-----------------------+
-
-
- Figure 1: Multiprotocol architecture providing file-transfer service
-
-
- +-----------+ +-----------+ +-----------+ +-----------+
- | FTP | | FTAM | | FTAM | | FTP |
- +-----------+ +-----------+ +-----------+ +-----------+
- | TCP | | ISO 8823 | | ISO 8823 | | TCP |
- +-----------+ +-----------+ +-----------+ +-----------+
- | IP | | ISO 8327 | | ISO 8327 | | CLNP |
- +-----------+ +-----------+ +-----------+ +-----------+
- | TP4 | |TP0/RFC1006|
- +-----------+ +-----------+
- | CLNP | | TCP |
- +-----------+ +-----------+
- | IP |
- +-----------+
-
- a) TCP/IP b) OSI c) RFC 1006 d) TUBA
-
-
- Figure 2: Protocol stacks providing file-transfer service.
-
- Figure 2c depicts a mixed stack architecture that provides the upper
- layer OSI services using the Internet protocols. This is an example
- of a "transition architecture" for providing OSI applications without
- requiring a full OSI implementation. Figure 2d depicts a mixed stack
- architecture that provides the upper layer Internet applications
- using the OSI network protocol. In addition to communicating with
- the two previous simple protocol stacks, the multiprotocol system of
- Figure 1 includes all the protocols necessary to communicate with
- these two new, mixed protocol stacks.
-
-
-
- Clark, Ammar & Calvert [Page 3]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- It is likely that many future network systems will be configured to
- support multiple protocols including IPng. As the IPng protocol is
- deployed, it is unreasonable to expect that users will be willing to
- give up any aspect of their current connectivity for the promise of a
- better future. In reality, most IPng installations will be made "in
- addition to" the current protocols. The resulting systems will
- resemble Figure 1 in that they will be able to communicate with
- systems supporting several different protocols.
-
- Unfortunately, in most current examples, the architecture of Figure 1
- is implemented as independent protocol stacks. This means that even
- though both TCP and CLNP exist on the system, there is no way to use
- TCP and CLNP in the same communication. The problem with current
- implementations of architectures like Figure 1 is that they are
- designed as co-existence architectures and are not integrated
- interoperability systems. We believe future systems should include
- mechanisms to overcome this traditional limitation. By integrating
- the components of multiple protocol stacks in a systematic way, we
- can interoperate with hosts supporting any of the individual stacks
- as well as those supporting various combinations of the stacks.
-
- In order to effectively use multiple protocols, a system must
- identify which of the available protocols to use for a given
- communication task. We call this the Protocol Determination [2]
- task. In performing this task, a system determines the combination
- of protocols necessary to provide the needed service. For achieving
- interoperability, protocols are selected from the intersection of
- those supported on the systems that must communicate.
-
- 4. Multiprotocol Techniques
-
- In this section we identify three main techniques to dealing with
- multiprotocol networks that are in use today and will continue to be
- used in the Internet. The first two techniques, tunneling and
- conversion, are categorized as intermediate-system techniques in that
- they are designed to achieve multiprotocol support without changing
- the end-systems. The third technique explicitly calls for the
- support of multiple protocols in end-systems. By describing these
- techniques here, we can motivate the need for the specific protocol
- features described in Section 5.
-
- 4.1 Encapsulation/Tunneling
-
- Encapsulation or tunneling is commonly used when two networks that
- support a common protocol must be connected using a third
- intermediate network running a different protocol. Protocol packets
- from the two end networks are carried as data within the protocol of
- the intermediate network. This technique is only appropriate when
-
-
-
- Clark, Ammar & Calvert [Page 4]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- both end-systems support the same protocol stack. It does not
- provide interoperability between these end systems and systems that
- only support the protocol stack in the intermediate network. Some
- examples of this technique are: a mechanism for providing the OSI
- transport services on top of the Internet protocols [13],
- encapsulating IEEE 802.2 frames in IPX network packets [5], tunneling
- IPX [10] and AppleTalk traffic over the Internet backbone. We expect
- IPng to be used for tunneling other network protocols over IPng and
- to be encapsulated.
-
- 4.2 Translation/Conversion
-
- Despite their known limitations [8], translation or conversion
- gateways are another technique for handling multiple protocols [11,
- 12]. These gateways perform direct conversion of network traffic
- from one protocol to another. The most common examples of conversion
- gateways are the many electronic mail gateways now in use in the
- Internet. In certain cases it may also be feasible to perform
- conversion of lower layer protocols such as the network layer. This
- technique has been suggested as part of the transition plan for some
- of the current IPng proposals [3, 15].
-
- 4.3 Multiprotocol End-Systems
-
- We expect that IPng will be introduced as an additional protocol in
- many network systems. This means that IPng should be able to coexist
- with other protocols on both end- and intermediate-systems.
- Specifically, IPng should be designed to support the Protocol
- Determination task described in Section 3.
-
- One technique that we consider for solving the Protocol Determination
- problem is to employ a directory service in distributing system
- protocol configuration information. We have developed and
- implemented mechanism for using the Internet Domain Name System (DNS)
- [6, 7] to distribute this protocol information [2]. Using this
- mechanism, a multiprotocol host can determine the protocol
- configuration of a desired host when it retrieves the network address
- for that host. Then the multiprotocol host can match the
- configuration of the desired host to its own configuration and
- determine which protocols should be used to carry out the requested
- communication service.
-
- Another alternative to determining protocol information about another
- host is Protocol Discovery. Using this approach, a host determines
- which protocols to use by trial-and-error with the protocols
- currently available. The initiating host monitors successive
- attempts to communicate and uses the information gained from that
- monitoring to build a knowledge base of the possible protocols of the
-
-
-
- Clark, Ammar & Calvert [Page 5]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- remote system.
-
- This knowledge is used to determine whether or not a communication
- link can be established and if it can, which protocol should be used.
-
- An important aspect of the Protocol Discovery approach is that it
- requires an error and control feedback system similar to ICMP [9],
- but with additional functionality (See Section 5).
-
- 5. Protocol Features
-
- In this section we identify features that affect a protocol's ability
- to support the multiprotocol techniques described in the previous
- section. These features indicate specific areas that should be
- considered when comparing proposed protocols. We present two
- different types of protocol features: those that should be included
- as part of the IPng protocol standard, and those that should be
- considered as part of the implementation and deployment requirements
- for IPng.
-
- 5.1 Protocol Standard Features
-
- o Addressing
-
- A significant problem in dealing with multiprotocol networks is
- that most of the popular network protocols use different
- addressing mechanisms. The problem is not just with different
- lengths but also with different semantics (e.g., hierarchical vs.
- flat addresses). In order to accommodate these multiple formats,
- IPng should have the flexibility to incorporate many address
- formats within its addressing mechanism.
-
- A specific example might be for IPng to have the ability to
- include an IPv4 or IPX address as a subfield of the IPng address.
- This would reduce the complexity of performing address conversion
- by limiting the number of external mechanisms (e.g., lookup
- tables) needed to convert an address. This reduction in
- complexity would facilitate both tunneling and conversion. It
- would also simplify the task of using IPng with legacy
- applications which rely on a particular address format.
-
- o Header Option Handling
-
- In any widely used protocol, it is advantageous to define option
- mechanisms for including header information that is not required
- in all packets or is not yet defined. This is especially true in
- multiprotocol networks where there is wide variation in the
- requirements of protocol users. IPng should provide efficient,
-
-
-
- Clark, Ammar & Calvert [Page 6]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- flexible support for future header options. This will better
- accommodate the different user needs and will facilitate
- conversion between IPng and other protocols with different
- standard features.
-
- As part of the support for protocol options, IPng should include a
- mechanism for specifying how a system should handle unsupported
- options. If a network system adds an option header, it should be
- able to specify whether another system that does not support the
- option should drop the packet, drop the packet and return an
- error, forward it as is, or forward it without the option header.
- The ability to request the "forward as is" option is important
- when conversion is used. When two protocols have different
- features, a converter may introduce an option header that is not
- understood by an intermediate node but may be required for
- interpretation of the packet at the ultimate destination. On the
- other hand, consider the case where a source is using IPng with a
- critical option like encryption. In this situation the user would
- not want a conversion to be performed where the option was not
- understood by the converter. The "drop the packet" or "drop and
- return error" options would likely be used in this scenario.
-
- o Multiplexing
-
- The future Internet protocol should support the ability to
- distinguish between multiple users of the network. This includes
- the ability to handle traditional "transport layer" protocols like
- TCP and UDP, as well as other payload types such as encapsulated
- AppleTalk packets or future real-time protocols. This kind of
- protocol multiplexing can be supported with an explicit header
- field as in IPv4 or by reserving part of the address format as is
- done with OSI NSEL's.
-
- In a multiprotocol network there will likely be a large number of
- different protocols running atop IPng. It should not be necessary
- to use a transport layer protocol for the sole purpose of
- providing multiplexing for the various network users. The cost of
- this additional multiplexing is prohibitive for future high-speed
- networks [14]. In order to avoid the need for an additional level
- of multiplexing, the IPng should either use a payload selector
- larger than the 8-bits used in IPv4 or provide an option for
- including additional payload type information within the header.
-
- o Status/Control Feedback
-
- With multiple protocols, the correct transmission of a packet
- might include encapsulation in another protocol and/or multiple
- conversions to different protocols before the packet finally
-
-
-
- Clark, Ammar & Calvert [Page 7]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- reaches its destination. This means that there are many different
- places the transmission can fail and determining what went wrong
- will be a challenge.
-
- In order to handle this situation, a critical protocol feature in
- multiprotocol networks is a powerful error reporting mechanism.
-
- In addition to reporting traditional network level errors, such as
- those reported by ICMP [9], the IPng error mechanism should
- include feedback on tunneling and conversion failures. Also,
- since it is impossible to know exactly which part of a packet is
- an encapsulated header, it is important that the feedback
- mechanism include as much of the failed packet as possible in the
- returned error message.
-
- In addition to providing new types of feedback, this mechanism
- should support variable resolution such that a transmitting system
- can request limited feedback or complete information about the
- communication process. This level of control would greatly
- facilitate the Protocol Discovery process described in Section
- 4.3. For example, a multiprotocol system could request maximal
- feedback when it sends packets to a destination it has not
- communicated with for some time. After the first few packets to
- this "new" destination, the system would revert back to limited
- feedback, freeing up the resources used by the network feedback
- mechanisms.
-
- Finally, it is important that the information provided by the
- feedback mechanism be available outside the IPng implementation.
- In multiprotocol networks it is often the case that the solution
- to a communication problem requires an adjustment in one of the
- protocols outside the network layer. In order for this to happen,
- the other protocols must be able to access and interpret these
- feedback messages.
-
- o MTU Discovery or Fragmentation
-
- A form of multiprotocol support that has long been a part of
- networking is the use of diverse data link and physical layers.
- One aspect of this support that affects the network layer is the
- different Maximum Transmission Units (MTU) used by various media
- formats. For efficiency, many protocols will attempt to avoid
- fragmentation at intermediate nodes by using the largest packet
- size possible, without exceeding the minimum MTU along the route.
- To achieve this, a network protocol performs MTU discovery to find
- the smallest MTU on a path.
-
-
-
-
-
- Clark, Ammar & Calvert [Page 8]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- The choice of mechanism for dealing with differing MTUs is also
- important when doing conversion or tunneling with multiple
- protocols. When tunneling is performed by an intermediate node,
- the resulting packets may be too large to meet the MTU
- requirements. Similarly, if conversion at an intermediate node
- results in a larger protocol header, the new packets may also be
- too large. In both cases, it may be desirable to have the source
- host reduce the transmission size used in order to prevent the
- need for additional fragmentation. This information could be sent
- to the source host as part of the previously described feedback
- mechanism or as an additional MTU discovery message.
-
- 5.2 Implementation/Deployment Features
-
- o Switching
-
- We define switching in a protocol as the capability to
- simultaneously use more than one different underlying protocol
- [1]. In network layer protocols, this implies using different
- datalink layers. For example, it may be necessary to select
- between the 802.3 LLC and traditional Ethernet interfaces when
- connecting a host to an "ethernet" network. Additionally, in some
- systems IPng will not be used directly over a datalink layer but
- will be encapsulated within another network protocol before being
- transmitted. It is important that IPng be designed to support
- different underlying datalink services and that it provide
- mechanisms allowing IPng users to specify which of the available
- services should be used.
-
- o Directory Service Requirements
-
- While not specifically a part of the IPng protocol, it is clear
- that the future Internet will include a directory service for
- obtaining address information for IPng. In light of this, there
- are some features of the directory service that should be
- considered vis-a-vis their support for multiple protocols.
-
- First, the directory service should be able to distribute address
- formats for several different protocol families, not just IPng and
- IPv4. This is necessary for the use of tunneling, conversion, and
- the support of multiprotocol systems. Second, the directory
- service should include support for distributing protocol
- configuration information in addition to addressing information
- for the network hosts. This feature will support the protocol
- determination task to be carried out by multiprotocol systems [2].
-
-
-
-
-
-
- Clark, Ammar & Calvert [Page 9]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- 6. Conclusion
-
- Future networks will incorporate multiple protocols to meet diverse
- user requirements. Because of this, we are likely to find that a
- significant portion of the traffic in the Internet will not be from
- single-protocol communications (e.g., TCPng/IPng). This will not
- just be true of near term, transitional networks but will remain as a
- reality for most of the Internet. As we pursue the selection of
- IPng, we should consider the special needs of multiprotocol networks.
- In particular, IPng should include mechanisms to handle mixed
- protocol traffic that includes tunneling, conversion, and
- multiprotocol end-systems.
-
- 7. Acknowledgments
-
- The authors would like to acknowledge the support for this work by a
- grant from the National Science Foundation (NCR-9305115) and the
- TRANSOPEN project of the Army Research Lab (formerly AIRMICS) under
- contract number DAKF11-91-D-0004.
-
- 8. References
-
- [1] Clark, R., Ammar, M., and K. Calvert, "Multi-protocol
- architectures as a paradigm for achieving inter-operability", In
- Proceedings of IEEE INFOCOM, April 1993.
-
- [2] Clark, R., Calvert, K. and M. Ammar, "On the use of directory
- services to support multiprotocol interoperability", To appear in
- proceedings of IEEE INFOCOM, 1994. Technical Report GIT-CC-93/56,
- College of Computing, Georgia Institute of Technology, ATLANTA,
- GA 30332-0280, August 1993.
-
- [3] Gilligan, R., Nordmark, E., and B. Hinden, "IPAE: the SIPP
- Interoperability and Transition Mechanism, Work in Progress,
- November 1993.
-
- [4] Leiner, B., and Y. Rekhter, "The Multiprotocol Internet", RFC
- 1560, USRA, IBM, December 1993.
-
- [5] McLaughlin, L., "Standard for the Transmission of 802.2 Packets
- over IPX Networks", RFC 1132, The Wollongong Group, November
- 1989.
-
- [6] Mockapetris, P., "Domain Names - Concepts and Facilities", STD
- 13, RFC 1034, USC/Information Sciences Institute, November 1987.
-
-
-
-
-
-
- Clark, Ammar & Calvert [Page 10]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- [7] Mockapetris, P., "Domain Names - Implementation and
- Specification. STD 13, RFC 1035, USC/Information Sciences
- Institute, November 1987.
-
- [8] Padlipsky, M., Gateways, Architectures, and Heffalumps", RFC 875,
- MITRE, September 1982.
-
- [9] Postel, J., "Internet Control Message Protocol", STD 5, RFC 792,
- USC/Information Sciences Institute, September 1981.
-
- [10] Provan, D., "Tunneling IPX Traffic Through IP Networks", RFC
- 1234, Novell, Inc., June 1991.
-
- [11] Rose, M., "The Open Book", Prentice-Hall, Englewood Cliffs, New
- Jersey, 1990.
-
- [12] Rose, M., "The ISO Development Environment User's Manual -
- Version 7.0.", Performance Systems International, July 1991.
-
- [13] Rose, M., and D. Cass, "ISO Transport Services on top of the
- TCP", STD 35, RFC 1006, Northrop Research and Technology Center,
- May 1987.
-
- [14] Tennenhouse, D., "Layered multiplexing considered harmful", In
- IFIP Workshop on Protocols for High-Speed Networks. Elsevier, May
- 1989.
-
- [15] Ullmann, R., "CATNIP: Common architecture technology for next-
- generation internet protocol", Work in Progress, October 1993.
-
- 9. Security Considerations
-
- Security issues are not discussed in this memo.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Clark, Ammar & Calvert [Page 11]
-
- RFC 1683 Multiprotocol Interoperability In IPng August 1994
-
-
- 10. Authors' Addresses
-
- Russell J. Clark
- College of Computing Georgia Institute of Technology
- Atlanta, GA 30332-0280
-
- EMail: rjc@cc.gatech.edu
-
-
- Mostafa H. Ammar
- College of Computing Georgia Institute of Technology
- Atlanta, GA 30332-0280
-
- EMail: ammar@cc.gatech.edu
-
-
- Kenneth L. Calvert
- College of Computing Georgia Institute of Technology
- Atlanta, GA 30332-0280
-
- EMail: calvert@cc.gatech.edu
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Clark, Ammar & Calvert [Page 12]
-
-