`
`
`
`
`
`EXHIBIT
`
`EXHIBIT
`1015
`
`1015
`
`
`
`(12) United States Patent
`Hodgkinson et al.
`
`US006317431B1
`US 6,317,431 B1
`Nov. 13, 2001
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`(54) ATM PARTIAL CUT-THROUGH
`
`(75) Inventors: Terence G Hodgkinson, Suffolk; Alan
`W O’Neill, Ipswich, both of (GB)
`
`(73) Assignee: British Telecommunications public
`limited company, London (GB)
`
`(58) Field of Search ................................... .. 370/395, 392,
`370/225, 256, 408, 409, 399, 466, 468,
`469, 471, 478, 355, 254, 397, 401, 351
`
`(56)
`
`References Cited
`Us PATENT DOCUMENTS
`
`5,432,777 * 7/1995 Le Boudec et al. ................. .. 370/60
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`Patent is extended or adjusted under 35
`U'S'C' 154(k)) by 0 days‘
`(21) App1_ NO;
`09/029,570
`_
`(22) PCT Filed:
`(86) PCT NO‘:
`§ 371 Date:
`
`Jun. 20, 1997
`PCT/GB97/01681
`Mar_ 6 1998
`’
`§ 102(e) Date: Mar. 6, 1998
`
`,
`
`,
`
`*
`
`erne e a .
`
`. . . . . . .
`
`. . . . . . ..
`
`- - - - -- 370/60
`5,440,547 * 8/ 1995 Easki et a1- - - - - - - - - -
`3536/6262
`*
`Leon 6: ‘11:1 ~~~~~~~~ ~~
`. 395/2008
`5,835,710 * 11/1998 Nagami et a1.
`370/256
`5,872,773 * 2/1999 Katzela et a1.
`5,903,559 * 5/1999 Acharya et a1. ..................... .. 370/55
`,, Cited by examiner
`Primary Examiner—Wellington Chin
`Assistant Examiner—M. Phan
`(74) Attorney, Agent, or Firm—NiXon & Vanderhye, P.C.
`(57)
`ABSTRACT
`
`(87) PCT Pub' NO‘: W097/50276
`PCT Pub. Date: Dec. 31, 1997
`_ D
`F _ A l,
`_
`P _
`Orelgn pp lcatlon nonty ata
`(30)
`Jun. 21 1996
`GB ................................................ .. 9613020
`,
`(
`)
`7
`(51) Int‘ Cl‘ """"""""""""" "
`
`;
`(52) US. Cl. ........................ .. 370/395; 370/392; 370/397;
`370/466; 370/468
`
`A method of transmitting across an ATM network a con
`nectionless datagram in a cell structure having the form of
`a plurality of ATM cells the ?rst cell of which carries in its
`payload the routing information of the connectionless
`datagrarn, and Wherein at an intermediate node of the
`network a connectionless routing function is carried out on
`said ?rst cell with the remaining cells remaining in the ATM
`la er.
`y
`
`10 Claims, 5 Drawing Sheets
`
`ORIGINATING
`2UO\ HOST
`TP LAYER ROUTER
`
`Z0 O\
`ROUTER
`
`ROUTER
`
`DESTINATION
`HOST
`ROUTER
`
`FIRSTCELL
`PROCESSING
`
`FIRST CELL
`PROCESSING
`
`FIRST CELL
`PROCESSING
`
`FIRST CELL
`PROCESSING
`
`AT M
`ATM LAYER swncn
`
`AT M
`A T M
`—-a- a —>
`SWITCH
`swncu
`
`AT M
`SWITEH
`
`‘ZOT /
`
`L201/
`
`Viptela, Inc. - Exhibit 1015
`Page 1
`
`
`
`U.S. Patent
`
`Nov. 13, 2001
`
`Sheet 1 0f5
`
`US 6,317,431 B1
`
`53
`/-"“
`
`E3
`/‘A'—\
`
`E3
`r-’¥\
`
`_m.N.
`
`__
`
`__
`
`_
`
`_
`
`_~_
`
`5:)?=:_§
`
`_2I
`:
`____.EH___2_V
`
`S::_:__z
`
`52:23
`
`EESNN
`
`Viptela, Inc. - Exhibit 1015
`
`Page 2
`
`Viptela, Inc. - Exhibit 1015
`Page 2
`
`
`
`U.S. Patent
`
`Nov. 13, 2001
`
`Sheet 2 015
`
`US 6,317,431 B1
`
`FIG. 2
`
`L2
`L0
`/
`1
`HEADER USER PAYLOAD SEETHJN
`
`PE 5 a‘
`
`LB a
`
`F|G.3
`
`nmmmmu
`HOST
`[PLAYER ROUTER
`
`mum
`
`mum
`
`UESTINAHON
`HOST
`ROUTER
`
`ATM
`ATM LAYER SWITCH
`
`ATM
`’' SWITCH
`
`\201/
`
`ATM _) ATM
`5" SWIT[H
`SWITCH
`
`\201/
`
`Viptela, Inc. - Exhibit 1015
`Page 3
`
`
`
`U.S. Patent
`
`Nov. 13, 2001
`
`Sheet 3 of5
`
`US 6,317,431 B1
`
`nmmmms
`ZUU\ H051
`1P LAYER mum
`
`ROUTER
`l
`
`l
`l
`l
`l
`l
`
`V
`
`fzkou
`ROUTER
`i
`
`l
`l
`l
`|
`1
`
`DESTINATION
`HOST
`ROUTER
`
`ATM
`MM
`ATM
`ATM
`ATM LAYER swmn a’ SWITEHI ;' swncu '5" swncu
`\
`/
`201
`201
`
`ommmmn
`2U0\ HOST
`IP LAYER ROUTER
`
`ZUU\
`ROUTER
`
`ROUTER
`
`DESTINATION
`mm
`ROUTER
`
`ZU/Z
`
`FIRST [ELL
`PROEESSiNB
`
`FIRST [ELL
`PROCESSING
`
`FIRST [ELL
`PROCESSING
`
`FIRST [£11
`PRO?ESSIHG
`
`ATM
`ATM LAYER SWITCH
`
`ATM
`’' SWITEH
`
`ATM _;_ ATM
`a" SWITCH
`swncu
`
`~2m/
`
`L201]
`
`Viptela, Inc. - Exhibit 1015
`Page 4
`
`
`
`U.S. Patent
`
`Nov. 13, 2001
`
`Sheet 4 0f 5
`
`US 6,317,431 B1
`
`FIGS
`
`HL
`Id
`
`HL
`
`ST
`
`Pf
`
`TL
`
`HE
`
`SIPA
`01 PA
`
`IPUP
`
`F|G.7
`FL
`
`PL
`
`SIPA
`SIPA
`51 PA
`SI PA
`UIPA
`U] PA
`01 PA
`UIPA
`IPOP
`
`Viptela, Inc. - Exhibit 1015
`Page 5
`
`
`
`U.S. Patent
`
`Nov. 13, 2001
`
`Sheet 5 015
`
`US 6,317,431 B1
`
`FIGS
`
`ST
`
`Pr
`SIPA
`UIPA
`
`F8
`
`F0
`
`HE
`
`FIGS
`
`Viptela, Inc. - Exhibit 1015
`Page 6
`
`
`
`1
`ATM PARTIAL CUT-THROUGH
`
`US 6,317,431 B1
`
`2
`its multi service capabilities. HoWever, ATM still has dif?
`culty in supporting traf?c Which is based on the connection
`less paradigm of the Internet and other LAN -type netWorks.
`
`SUMMARY OF THE INVENTION
`
`In accordance With one aspect of the present invention
`there is provided a method of transmitting across a netWork
`a connectionless datagram in a packet structure having the
`form of a series of packets, the header including the routing
`information of the connectionless datagram being mapped
`into the payload of the ?rst packet structure, and Wherein at
`an intermediate node of the netWork a connectionless rout
`ing function is carried out on said ?rst packet.
`In accordance With a second aspect there is provided a
`sWitching node for a data netWork, the sWitching node
`comprising:
`an ATM sWitch;
`means for accepting a connectionless datagram and con
`verting the datagram into a plurality of ATM cells in
`Which header information in the connectionless data
`gram is inserted into the payload of the ?rst cell of the
`ATM cell structure; and
`means for detecting the length of the header ?elds of the
`connectionless datagram and if the length of these
`?elds is too great to be contained in the payload of the
`?rst cell of the ATM cell structure generating a partial
`header checksum and inserting this checksum into the
`payload of the ?rst ATM cell together With only the
`header ?elds of the connectionless datagram up to and
`including the destination address.
`In accordance With a third aspect there is provided a
`sWitching node for a data netWork, the sWitching node
`comprising:
`an ATM sWitch;
`means for accepting a connectionless datagram and con
`verting the datagram into a plurality of ATM cells in
`Which header information in the connectionless data
`gram is inserted into the payload of the ?rst cell of the
`ATM cell structure; and
`means for detecting the length of the header ?elds of the
`connectionless datagram and if the length of these
`?elds is too great to be contained in the payload of the
`?rst cell of the ATM cell structure generating a partial
`header checksum and inserting this checksum into the
`payload of the ?rst ATM cell together With only the
`header ?elds of the connectionless datagram up to and
`including the destination address.
`The present invention is also directed to a data netWork
`incorporating sWitching nodes as set out hereinbefore.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`In order that the present invention may be more readily
`understood an embodiment thereof Will noW be described by
`Way of eXample and With reference to the accompanying
`draWings in Which:
`FIG. 1 shoWs a typical ATM netWork;
`FIG. 2 shoWs a typical ATM cell;
`FIG. 3 is a diagram shoWing a knoWn method of trans
`porting IP over an ATM netWork;
`FIG. 4 is a similar diagram shoWing a method of achiev
`ing direct connection betWeen originating and destination
`hosts;
`FIG. 5 is a similar diagram to FIGS. 3 and 4 shoWing a
`process of integrating connectionless datagram traf?c and
`ATM in accordance With the present invention;
`
`BACKGROUND OF THE INVENTION
`The present invention concerns transmission of data over
`networks.
`The most traditional netWork is the telephone netWork.
`The arrival of ISDN has greatly enhanced the capabilities of
`telephony and in particular the bandwidth available to users.
`Telecommunication netWorks such as telephony, FR (Frame
`Relay) and X25 are What is knoW as “connection-oriented.”
`Thus prior to sending information across a connection
`oriented netWork a user must be allocated a circuit either by
`provision or demand. Once this has been achieved the user
`can then send and receive information across the netWork
`betWeen host machines.
`In parallel With the arrival of broadband telephony there
`has been a very substantial groWth in What are knoWn as
`“connectionless” netWorks. Connectionless netWorks
`encompass LANs but in particular the most signi?cant
`connectionless netWork is the Internet.
`In a connectionless netWork a user does not have to obtain
`a circuit connection With a desired destination prior to
`sending the information across the netWork. This is because
`information is sent in datagrams Which contain header ?eld
`information Which intermediate nodes use for routing pur
`poses. There are a number of data netWorking protocols
`Which have been designed for connectionless netWork para
`digms. These include the Internet Protocol (IP), SNA
`(Systems NetWork Architecture), Appletalk and IPX and all
`transport data in the form of datagrams. Such datagrams Will
`hereinafter be referred to as connectionless datagrams.
`In addition to the above tWo basic types of netWork, the
`arrival of broadband netWorks heralded by the introduction
`of optical ?bres has substantially increased the range and
`nature of data Which can be transmitted over telephone lines.
`Thus While some users may be content With merely main
`taining voice connections at constant bit rates other users
`might Wish to have access to other connection types such as
`video and data at variable bit rates. Thus users noW require
`the ability to select from a number of connection types in
`accordance With their needs. What are knoWn as ATM
`(Asynchronous Transfer Mode) netWorks have been devel
`oped to meet this demand. In a typical ATM netWork a user
`can choose betWeen a plurality of potential connection
`types, for eXample a ?Xed rate voice link, a variable band
`Width link peaking at 10 megabits and With a mean of 5
`megabits, and a third variable bandWidth link peaking at 20
`megabits and having a mean of 8 megabits. The second of
`these connection types can be used for high speed data
`transfer and the third for the transmission of video images.
`In order to maXimise the potential bandWidth available to
`users the telecommunications industry has developed What
`are knoWn as virtual path (VP) netWorks. VP netWorks differ
`in tWo Ways from the traditional telephone netWork already
`described. In a VP netWork each user is allocated a band
`Width appropriate to his assumed needs in the various
`connection types and the ATM netWork management pro
`vide bandWidth by selecting a route from all of the available
`paths in the netWork. It Will be appreciated that it Would be
`uneconomic to provide each user all the time With all the
`maXimum bandWidth that that user might require.
`Accordingly, in a VP netWork the sum of the nominal
`bandWidths allocated to the users connected in the netWork
`is substantially greater than the total bandWidth of the
`netWork.
`Thus, ATM netWorks provide a high speed technology
`that is likely to become fundamental in telephony because of
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`65
`
`Viptela, Inc. - Exhibit 1015
`Page 7
`
`
`
`US 6,317,431 B1
`
`3
`FIGS. 6 and 7 show protocols respectively for IP v 4 and
`IP v 6; and
`FIGS. 8 and 9 shoW ATM cells generated in accordance
`With the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`4
`mation on a hop-by-hop basis betWeen the intermediate
`nodes Within the chain, the original datagram being seg
`mented into a plurality of ATM cells When travelling
`betWeen the ATM sWitches at the intermediate nodes. In this
`mode the ATM netWork is being used to provide leased line
`or LAN -to-LAN interconnect type services. In order to
`generate the ATM cells What is knoWn as an ATM Adapta
`tion Layer is used to decompose the IP datagram into ATM
`cells.
`The problem With this approach is that at each of the
`nodes the original IP datagram has to be reassembled so that
`the IP router 200 at the intermediate node can utilise the
`header ?eld information and then returned through the AAL
`layer for onWard transmission by the ATM sWitch to the neXt
`node. As can be seen in FIG. 3 this involves using the IP
`layer router at the IP layer to determine the output port of the
`router Which is to be used, and resegmenting the IP datagram
`into ATM cell format using an AAL process for onWard
`transmission by the associated ATM sWitch. This approach
`has the draWback that the end-to-end delay increases With
`the number of intermediate nodes due to the time it takes for
`them to reassemble the IP datagram and resegment it into
`ATM cells. Accordingly this knoWn approach involving IP
`over ATM is unsuitable for IP ?oWs that have a short delay
`requirement and/or a long duration, and a direct connection
`betWeen the tWo hosts may become preferable as this is more
`ef?cient in both end-to-end delay and netWork resource
`utilisation. Additionally, each of the IP routers 200 at the
`intermediate nodes in the chain has to buffer data Which it
`does not directly need to process.
`Pages 1409—1424 of Document Computer NetWorks and
`ISDN Systems, 1994, Vol. 26, No. 11, describe the above
`method of operation. In the method described in this docu
`ment all connectionless datagram cells leave the ATM to
`undergo payload processing prior to being forWarded.
`FIG. 4 of the accompanying draWings shoWs an approach
`Which has been proposed to meet the problems of the
`arrangement shoWn in FIG. 3. This approach is knoWn as
`ATM cut-through and proposes the use of a direct connec
`tion over the ATM layer betWeen the originating and desti
`nation hosts. It is achieved by providing a mapping betWeen
`IP and ATM addresses. This mapping alloWs the originating
`host in FIG. 4 to discover the address of the ATM sWitch
`connected to the destination host and then to route all cells
`directly across the ATM netWork to this sWitch, thus bypass
`ing all of the intermediate nodes. HoWever, this approach
`still has problems. Firstly, it is not suited to all IP sessions.
`In particular, advantages of ATM cut-through are only
`realised Where the IP sessions are of a suitably long duration
`for them to bene?t from cut-through being applied.
`Additionally, after setting up a connection the datagrams are
`not sent to intermediate routers so router functionality such
`as re-routing, header error checking etc. become inacces
`sible. A third problem is that in order to achieve ATM
`cut-through mapping is required betWeen the IP and ATM
`netWork addressing schemes. The result of this is that ATM
`cut-through is only useful for long-term sessions and does
`not address the requirements of shorter and increasingly
`higher data-rate sessions.
`The problems of both of these knoWn approaches are met
`in the system and method disclosed in FIG. 5 of the
`accompanying draWings. In order to distinguish the method
`of the present invention from the previously described
`methods, it Will be referred to hereinafter as ATM partial
`cut-through.
`As shoWn in FIG. 5, the ATM partial cut-through system
`occupies the middle ground betWeen the tWo eXtremes of
`
`Referring noW to FIG. 1 of the accompanying drawings,
`there is shoWn a block diagram of a conventional ATM
`netWork. The ATM netWork consists of a netWork of par
`tially interconnected sWitching nodes in the form of ATM
`sWitches 10 to 18. Traffic in an ATM netWork consists of
`cells Which are transmitted from node to node in the net
`Work. In the netWork of FIG. 1, sWitches 10, 11, 12, 13, 15,
`16, 17 and 18 also function as access sWitches. Each of the
`access sWitches is connected to a set of access lines 20 Which
`connect the sWitch to other netWorks or directly to customer
`equipment. By Way of illustration, FIG. 1 shoWs sWitch 17
`connected by one access line 20 to a computer 22 and by
`another access line 20 to a multiplexer 24. The computer 22
`is provided With an ATM card Which enables it to transmit
`and receive data in the form of ATM cells. The mulitpleXer
`24 can receive video, data and speech signals and convert
`these in a multiplexed manner into ATM cells. Likewise, it
`can receive ATM cells from the sWitch 17 and convert these
`to video, data and voice signals. Typically, the multiplexer
`24 Will be located at the premises of a user of the ATM
`netWork.
`As is knoWn to those skilled in the art, When transmitting
`an ATM cell betWeen the ATM input interface and the ATM
`output interface, initial values are inserted into the virtual
`path identi?er (VPI) and virtual channel identi?er (VCI)
`?elds in the header. The ATM input or output interface may
`be in an access node or outside the ATM netWork, for
`example in computer 22 or multiplexer 24. Then, at each
`sWitching node, the values of the VPI and/or VCI ?elds are
`read and one or both of the values are used together With a
`routing table to select an output port. Before the ATM cell
`leaves the sWitch, the values of one or both of the VPI and
`VCI ?elds are updated in accordance With data contained in
`a routing table. The VPI ?eld provides a coarse level of
`routing Whereas the VCI ?eld provides a ?ne level of
`routing. The routing tables are set up partly by netWork
`management and partly during call set up. Mainly, but not
`entirely, virtual path routing tables are set up by netWork
`management and virtual channel routing tables are set up by
`signalling during call set up.
`The structure of a basic ATM cell and the header ?elds
`Will noW be described.
`Referring noW to FIG. 2, a basic ATM cell comprises a
`?ve-octet header 40 and a 48-octet user payload section 42.
`The cell header 40 is used to route the cell betWeen sWitches
`across the netWork and the user payload section 42 contains
`the user’s data and it is carried transparently across the
`netWork and delivered unchanged at the far end. As Will
`become apparent this basic cell is generally much smaller
`than a connectionless datagram.
`Referring noW to FIG. 3 of the draWings, this shoWs a
`netWork of IP routers 200 connected to ATM sWitches 201.
`The classic approach to supporting IP over ATM is to
`establish, at the ATM layer, a permanent virtual circuit
`(PVC), permanent virtual path (PVP) or sWitched virtual
`circuit (SVC) link betWeen adjacent routers Within a chain.
`Therefore, When the originating host sends a connectionless
`datagram to the destination host, ATM cells of the kind
`shoWn in FIG. 2 are used to transport the datagram infor
`
`15
`
`25
`
`35
`
`55
`
`65
`
`Viptela, Inc. - Exhibit 1015
`Page 8
`
`
`
`US 6,317,431 B1
`
`5
`classic IP over ATM in Which every intermediate node is
`fully involved, and ATM cut-through in Which there is a
`direct mapping betWeen host and destination. As seen in
`FIG. 5, each node consisting of an IP layer router 200 and
`an ATM sWitch 201 has an additional functionality provided
`at 202 Which Will be referred to hereinafter as ?rst cell
`processing . Thus in the system shoWn in FIG. 5, When the
`originating host initiates an IP session in Which data is to be
`sent to the destination host via datagrams, the ATM cell
`structure is arranged so that only the ?rst cell of the structure
`derived from the original datagram carries routing informa
`tion and all the cells folloWing this ?rst cell carry only the
`payload information of the original datagram. At each inter
`mediate node the router at that node uses the ?rst cell
`processing functionality to determine the route of the entire
`datagram as represented by the plurality of ATM cells Whilst
`data forWarding of the ATM cells is left to the ATM layer
`(layer 2 or the data link layer of the OSI reference model).
`Thus based on the knowledge that the payload of the ?rst
`ATM cell contains all of the relevant routing information
`Within the IP header, it becomes possible by detecting the
`?rst cell and opening the payload to extract IP layer infor
`mation Which is capable of routing all of the ATM cells. This
`enables very ef?cient datagram forWarding as the datagram
`does not have to be reassembled and resegmented at each
`intermediate node and, as Will be described later, also
`enables datagram discarding Within the ATM layer.
`In order to implement partial cut-through additional soft
`Ware and hardWare functions Will be needed to implement
`the “?rst cell processing features”. These features include
`the identi?cation of cells containing IP headers, the reading
`of the IP ?elds and the consequences of such reading, the
`buffering of the ATM cells containing the rest of the
`datagram, the calculation of the forWarding path and man
`aging the forWarding process. HoWever, this functionality
`does not affect standard ATM processes so it can be imple
`mented Within each ATM sWitch Without affecting standard
`ATM VPI/VCI cell forWarding processes.
`In accordance With the embodiment being described, the
`means for detecting the ?rst cell of an IP datagram is
`
`provided by using one of the ATM Adaptation Layer processes Which have already been established for the
`transmission of IP data over an ATM netWork. Examples of
`these already existing AAL processes are AAI3/4 and
`AAL5.
`Referring noW to FIG. 6 of the accompanying draWings,
`this ?gure represents a datagram having ?elds Which con
`form With the IP v 4 protocol and in the ?gure the ?elds
`bounded by the bold lines constitute the IP datagram header.
`The key for the ?elds is set out in Table 1 beloW.
`
`TABLE 1
`
`Version
`Head Length
`Service Type
`Total Length
`Identi?cation
`Flag Bits
`Fragment Offset
`Time to Live
`Protocol
`Header Checksum
`Source IP Address
`Destination IP Address
`Options (if any)
`Padding (if any)
`IP Datagram Payload
`
`V
`HL
`ST
`TL
`Id
`FB
`FO
`TtL
`Pr
`HC
`SIPA
`DIPA
`O
`P
`IP DP
`
`The payload of a typical connectionless diagram can be
`substantially larger than the payload capacity of an ATM
`
`6
`cell. For example, the IP protocol alloWs payloads of up to
`approximately 65 kilobytes.
`FIG. 7 of the draWings is a similar representation to FIG.
`6 and shoWs a datagram having ?elds Which correspond to
`the IP v 6 Protocol. Again the ?elds bounded by the bold line
`represent the IP Datagram header. Table 2 beloW sets out
`those ?elds Which differ from the ?elds of FIG. 6.
`
`TABLE 2
`
`Py
`FL
`HL
`
`Priority
`FloW Label
`Hop Limit
`
`15
`
`When a connectionless datagram, in the present embodi
`ment an IP datagram, is processed at the AAL layer the
`variable length datagram is segmented into ATM cells of the
`kind described in FIG. 2. Thus the AAL layer Will generate
`ATM cells of the kind shoWn in FIGS. 8 and 9. In these
`?gures the bold lines encompass the ATM cell header. Other
`?elds Which are not common to the IP datagrams described
`With reference to FIG. 6 and 7 are set out in Table 3.
`
`25
`
`35
`
`45
`
`55
`
`65
`
`VPI
`VCI
`PT
`CLP
`HEC
`PCRC
`
`TABLE 3
`
`Virtual Path Indicator
`Virtual Circuit Indicator
`Payload Type
`Cell Loss Priority
`Header Error Check
`Partial Cylic Redundancy Code
`
`The cell shoWn in FIG. 8 is generated at the AAL layer
`from an IP v 4 datagram using AAL5. As already explained,
`an IP datagram and any other type of connectionless data
`gram is likely to be substantially larger than an ATM cell.
`At the AAL layer the IP datagram is segmented into ATM
`cells of the kind described in FIG. 2 and as a result of this
`segmentation the header section of the IP datagram is
`inserted into the payload of the ?rst ATM cell along, in many
`cases, With some of the payload, ie the ?rst 48 octets of the
`IP datagram Will become the payload of the ?rst ATM cell,
`the second 48 octets of the IP datagram Will become the
`payload of the second ATM cell and so on until the Whole IP
`datagram has been converted into the ATM cell structure.
`Each ATM cell Will, of course, have the appropriate ATM
`header as shoWn in bold lines.
`The cell structure shoWn in FIG. 9 has been generated
`from an IP v 6 datagram also using AAL 5 and similar
`considerations apply.
`In both cases it Will be seen that the header of the IP
`datagram Which includes all the IP routing information has
`been included Within the payload of the ?rst of the ATM
`cells generated at the AAL layer. As Will also be appreciated,
`the information from the original IP datagram also contains
`a ?eld Which indicates the total length of the original
`datagram. Note that in this embodiment, the IP header does
`not include header options (IP v 4) or header extensions (IP
`v 6). These extend the siZe of the header such that they Will
`not necessarily reside completely Within the ?rst cell of the
`ATM structure after the IP datagram has been processed at
`the AAL. For the purposes of partial cut-through, these
`options and extensions are therefore treated as part of the
`payload and, as in ATM cut-through, are not processed by
`the immediate routers.
`Subsequent cells generated at the AAL layer are not
`shoWn as these cells Will be conventional ATM cells With the
`
`Viptela, Inc. - Exhibit 1015
`Page 9
`
`
`
`7
`48 octet payload sections of the cells carrying the IP
`datagram payload.
`Once the IP datagram has been converted into the ATM
`cell structure it Will be transported from the ?rst ATM sWitch
`shoWn in FIG. 5 to the ?rst of the intermediate nodes. At this
`intermediate node the ?rst cell of the ATM cell structure is
`subjected to the ?rst cell processing function 202 at that
`node. This function Will include the identi?cation of cells
`containing IP header information, the reading of the IP
`?elds, the calculation of the forWarding path and managing
`the forWarding process. This can be achieved by copying the
`IP header contents of the ?rst of the ATM cells to the ?rst cell
`processing function carrying out the recording process
`Whilst buffering the ATM cells. It Will thus be seen that When
`carrying out partial cut-through only the IP header informa
`tion is processed at the IP layer. Consequently the additional
`?rst cell processing functionality carried out on the extracted
`IP header information has no effect on the standard ATM
`sWitching processes support from the requirements to buffer
`the folloWing cells. As the ?rst cell processing function has
`access to the length of the original datagram and this
`datagram, including the IP header information, has been
`broken into 48 octet segments, the ?rst cell processing
`function Will also knoW the number of ATM cells Which had
`been generated at the AAL layer of the originating node.
`This has the result that the ?rst cell processing functionality
`provides the ability to implement datagram discard at the
`ATM layer as it is possible to calculate the total number of
`cells arriving at the ATM sWitch and check Whether or not
`there is suf?cient spare buffer capacity to store all of the
`datagram’s cells.
`Another feature provided by the system shoWn in FIG. 5
`is that error checking can be carried out at the intermediate
`node by the IP layer router. When ATM cut-through is
`applied, as in the system shoWn in FIG. 4, the IP header error
`check feature supported by IP v 4 is lost. HoWever With ATM
`partial cut-through as shoWn in FIG. 5 the usual IP header
`error checking processes are preserved provided the ?rst
`ATM cell contains all of the IP header information, including
`all options. This is necessary because the IP v 4 CRC check
`is across the header and all options, and some of these
`options could be in the second cell.
`In certain circumstances this condition may be violated.
`Because of this the source and destination hosts shoWn in
`FIG. 5 may include a Service Speci?c Convergence Sub
`layer (SSCS) process Within the AAL to detect over-length
`headers, IP v 4 headers, or any request for the insertion of an
`optical CRC for the IP v 6 header. This CRC is optional
`because, unlike IP v 4, the IP v 6 header has no CRC of its
`oWn. Optional insertion of a CRC might be useful to detect
`header corruption Within the ATM netWork so that the cells
`associated With the header corruption and carrying the
`payload of the complete datagram can be discarded. In such
`a case the SSCS process inserts a neW CRC ?eld into the
`original IP header. This neW ?eld is a partial header check
`sum calculated only for the IP header ?elds up to and
`including the destination address. When this neW ?eld is
`inserted into the IP header ?eld it is placed immediately after
`the destination address ?eld, as is shoWn in FIG. 8.
`The processing that needs to be invoked by the originating
`host, intermediate nodes, and destination host When using
`ATM partial cut-through are listed beloW. Purely for illus
`trative purposes, it has been assumed that the SSCS process
`is being applied for both IP v 4 and IP v 6 using a standard
`AAL type. It is also being assumed that the availability of
`buffer space Will be checked against the number of cells
`Within each datagram and then either reserved or all of the
`cells discarded as necessary.
`
`25
`
`35
`
`45
`
`55
`
`US 6,317,431 B1
`
`Originatinq Node
`Receive IP datagram
`ForWard to AAL Processing
`SSCS Part of Process
`
`10
`
`15
`
`if IP CRC processing being used at intermediate nodes
`then
`Read datagrarn Version ?eld
`if IP v 6 then
`calculate partialiCRC
`insert partialiCRC ?eld after destination
`address
`
`end
`if IP v 4 then
`if Header Length ?eld > available payload
`space in the ATM cell then
`calculate partialiCRC
`insert partialiCRC ?eld after
`destination address
`
`end
`
`end
`
`end
`ATM transmission
`
`Intermediate Node
`ATM reception
`Identify ?rst cell in datagram
`Copy and forWard payload from the ?rst cell to the ‘?rst cell
`processing’ functionality
`Read datagram Version ?eld
`While buffering incoming cells do
`
`if IP v 6 then
`calculate number of cells in datagrarn using
`the Payload Length ?eld
`
`end
`if IP v 4 then
`calculate number of cells in datagrarn using
`Header Length and Total Length ?elds
`
`end
`
`check Whether or not sufficient buffer space is available to
`store the datagram’s cells
`if suf?cient buffer space available then reserve buffer space
`if IP CRC processing being used at intermediated node
`then
`
`if IP v 6 then
`calculate partialiCRC for partial
`header
`compare With partialiCRC ?eld
`contents
`if compared CRC values are not
`equal then
`indicate datagrarn cells
`are to be discarded
`
`end
`
`end
`if IP v 4 then
`if Header Length ?eld >
`available payload space Within
`the ATM cell then
`calculate partialiCRC for
`partial header
`compare With partialiCRC
`?eld contents
`if compared CRC values
`are not equal then
`indicate datagrarn
`
`65
`
`Viptela, Inc. - Exhibit 1015
`Page 10
`
`
`
`US 6,317,431 B1
`
`9
`
`-continued
`
`cells are to be
`discarded
`
`end
`
`calculate header checksum
`compare with Header
`Checksum ?eld contents
`if compared Header
`Checksum values are not
`equal then
`indicate datagram
`cells are to be
`discarded
`
`end
`
`end
`
`end
`
`end
`if IP CRC processing is not being used at
`intermediate nodes then
`indicate datagram cells are not to
`be discarded
`
`end
`if datagram cells are to be discarded then
`release buffer space reserved for the
`datagram’s cells
`initiate discard of all received cells
`stored in the cache buffer
`discard all remaining cells associated
`with this datagram
`
`Forward IP address information to routing
`function
`Read address
`Identify forwarding parameters (eg VPI,
`VCI and output port number)
`Switch all of the datagram’s cells
`through the ATM switch
`ATM transmission
`
`end
`
`end
`if insu?icient buffer space available then
`initiate discard of all received cells stored
`in the cache buffer
`discard all remaining cells associated with
`this datagram
`
`end
`
`end
`
`Destination Node
`ATM reception
`Forward to AAL processing
`
`SSCS Part of the AAL Process
`
`if IP CRC processing being used at intermediate nodes
`then
`Read datagram Version ?eld
`if IP v 6 then
`remove partialiCRC ?eld
`
`else
`
`end
`
`end
`
`if Header Length ?eld > available payload
`space in the ATM cell then
`remove partialiCRC ?eld
`end
`
`10
`
`15
`
`25
`
`35
`
`45
`
`55
`
`Forward datagram.
`The system described as partial cut-through has a number
`of advantages over ATM cut-through.
`Firstly the ATM switches are able to forward ATM cells
`based on IP addresses and routing information
`
`65
`
`10
`Secondly access to the IP datagram length information
`?elds allows the ATM switch to check buffer resource
`availability and to apply a datagram discard policy at the
`ATM layer.
`Thirdly access to IP header checksum information allows
`the ATM switch to discard immediately all of the datagram’s
`cells if the header is errored.
`Fourthly IP addresses are used to determine the route
`across the ATM network thus removing the need for an
`address resolution processes (ARP): consequently there is
`no requirement for IP to E164 address mappings.
`Fifthly normal ATM processes are unaffected.
`It may be appreciated that the invention may be used to
`transmit a connectionless datagram across a network as a
`series of packets. When using the invention to transmit a
`connectionle