Abstract:
The present invention provides a method and apparatus for transmitting packets. One embodiment of the present invention includes an access server receiving a packet from a first unit through a first interface of a plurality of interfaces. The access server maps the packet into a first frame to transmit the packet over a predetermined point-to-point connection. An interface number representing the first interface is stored in an address field of the first frame. The first frame is then forwarded via the point-to-point connection to a second unit. The second unit maps a response to the packet into a second frame and stores the interface number representing the first interface in an address field of the second frame. The second unit then forwards the second frame to the access server. Upon receipt, the access server reads the address field of the frame to determine through which interface the response is to be forwarded.

Description:
FIELD OF THE INVENTION 
     The invention relates generally to computer networking systems, and, in particular, to addressing frames of data. 
     BACKGROUND OF THE INVENTION 
     Typically, when a remote node  152  uses a service provider to establish a remote connection with a separate network, the remote node  152  will dial into the service provider&#39;s local Network Access Server (NAS)  154 . As shown in FIG. 1, the NAS  154  usually includes several port interfaces. Each remote node dials into the NAS  154  through a separate port interface. Data received through interfaces may in turn be multiplexed over one synchronized line  156  providing a connection to a Wide Area Network (WAN) access device  260 . 
     The data is usually transmitted between the remote nodes and the NAS  154  over an asynchronous line (e.g. telephone line). Therefore, the NAS typically needs to frame the packets of data received from the remote node into data-link control protocol frames (e.g. High-level Data Link Control (HDLC)) in order to transmit the packets over the synchronous line  156 . (References herein to the data-link layer and the network layer are references to the Open Systems Interconnection (OSI) model developed by the International Standardization Organization). 
     As shown in FIG. 1, the synchronous line  156  between the NAS  154  and the WAN access device  160  is usually a point-to-point connection. That is, a connection with out any intervening nodes or switches. 
     As a result of the point-to-point nature of the connection, the address field of the data-link frame is not used because the frame has only one possible destination once it is transmitted. Usually, the address field of a data-link frame is used to indicate the physical destination of the frame so that any switches between a frame&#39;s source and destination will be able to read the frame&#39;s address field and know where to forward the frame. However, when it is known that there will be no intervening switches between the frame&#39;s source and destination (e.g. point-to-point connection) no address is necessary. In fact, the RFC  1662  states that for point-to-point connections, the address field of the HDLC frame should contain 0×FF. 
     When the NAS  154  receives responses from the WAN access device  160 , the NAS  154  usually performs a routing function to determine where the response is to be forwarded. That is, the NAS  154  will strip the response packet from its data-link frame and read the packet&#39;s address information, which is usually provided at the network layer (e.g. the Internet Protocol (IP) address). The routing procedures, however, slow down the transmission of the responses and usually only work if the node to which a response is being delivered, has been given a network address. 
     In the case of a user dialing into a NAS  154  from a unit that does not have a network address (e.g. a terminal), the NAS will usually assign a network address to each packet received from that unit. The assigned network addresses will in turn will be used by the NAS to forward responses using the routing procedures described above. Assigning network addresses, however, has the disadvantage of preallocating several network addresses, when in fact, some of these addresses may not be used. 
     Therefore, what is needed is a way for an access server to forward data-link frames received from a point-to-point connection without having to perform routing operations. 
     SUMMARY OF THE INVENTION 
     The present invention provides a method and apparatus for transmitting packets. One embodiment of the present invention includes an access server receiving a packet from a first unit through a first interface of a plurality of interfaces. The access server maps the packet into a first frame to transmit the packet over a predetermined point-to-point connection. An interface number representing the first interface is stored in an address field of the first frame. The first frame is then forwarded via the point-to-point connection to a second unit. 
     The second unit maps a response to the packet into a second frame and stores the interface number representing the first interface in an address field of the second frame. The second unit then forwards the second frame to the access server. 
     Upon receipt, the access server reads the address field of the second frame to determine through which interface the response is to be forwarded. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements, and in which: 
     FIG. 1 illustrates a prior art network configuration. 
     FIG. 2 illustrates a network configuration capable of implementing the present invention according to one embodiment. 
     FIG. 3 a  illustrates a flow diagram describing the step of the present invention according to one embodiment. 
     FIG. 3 b  illustrates a flow diagram describing the step of the present invention according to one embodiment. 
    
    
     DETAILED DESCRIPTION 
     A method and apparatus is described for having a NAS forward data-link layer frames received from a point-to-point connection without performing routing operations. 
     In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known standards, structures, and techniques have not been shown in order not to unnecessarily obscure the present invention. 
     Referring to FIG. 2, a network configuration is shown, which is capable of implementing the present invention to one embodiment. As shown, a remote node  252  dials into the NAS  254 , when attempting to establish a connection through the WAN  270 . The remote node sends a packet of information to the NAS  254  across an asynchronous line. The information is received by the NAS through one of the NAS&#39;s several port interfaces  258 . 
     The packet of information received from a remote node  252  is framed by the NAS into a data-link frame to be sent to the WAN access device  260 . In the present invention, the number of the port interface through which the packet was received is mapped into the address field of the data-link frame. 
     As shown in FIG. 2, the line connecting the NAS  254  and the WAN access device  260  is a point-to-point connection. In one embodiment, the line is also synchronous connection. 
     Once the WAN access device  260  receives the data-link frame from the NAS  254 , the WAN access device  260  establishes a logical channel  264  between the WAN access device  260  and a WAN  270 . Afterwards, the WAN access device stores the number of the NAS port interface, through which the NAS received the packet, into a table entry corresponding to channel established between the WAN access device  260  and the WAN  270 . The table entry is included in a mapping table  262  stored at the WAN access device. 
     When the WAN access device  260  receives a response over one of its channels  264 , the WAN access device checks its mapping table  262  to see if a NAS port interface number has been stored in a table entry corresponding to the channel over which the response was received. If a NAS port interface number is present in the table entry, the port interface number is mapped into the address field of the data-link frame when the response is framed. The data-link frame is then sent to the NAS  254  over the point-to-point connection. 
     When the NAS  254  receives the response, rather than performing a standard routing procedure of the response, the NAS  254  reads the address field of the data-link frame. The NAS then forwards the response through the NAS port interface corresponding with the port interface number represented in the address field of the data-link frame. As a result, the NAS  254  is able to forward data-link frames received from the point-to-point connection faster than had it performed standard routing operations. 
     Referring to FIG. 3, a flow diagram is shown describing the steps of one embodiment of the invention in more detail. At step  302 , a user dials into a NAS through a remote node and transmits a packet of information to the NAS. In one embodiment, the connection between the remote node and the NAS is an asynchronous line. 
     In step  304 , the packet is received by the NAS through one of several port interfaces, each of which is assigned a port interface number. The NAS, in step  306 , then strips the asynchronous data-link frame from the packet. 
     In step  308 , the NAS determines whether the packet is to be multiplexed over a point-to-point connection with a WAN access device (e.g. a Frame Relay Access Device). For example, in one embodiment, the NAS predetermines that all packets of data received on a particular set of port interfaces are to be multiplexed over a particular synchronized point-to-point connection line. In addition, the point-to-point connection may provided a connection between the NAS and a device other than a WAN access device without departing from the scope of the invention. 
     If the NAS determines that the packet is not to be multiplexed (i.e. was not received via one of the specified interfaces), in step  310  standard routing operations are performed to determine the next hop for the packet and the interface through which the packet should be forwarded. 
     If, on the other hand, it is determined in step  308  that the packet is to be multiplexed over the synchronized point-to-point connection, then in step  312  the NAS frames the packet into a data-link control protocol (e.g. HDLC). In particular, the NAS maps the number of the NAS port interface through which the packet was received, into the destination address field of the data-link frame. Recall that RFC  1662  states that ordinarily in the case of a point-to-point connection the destination field in a data-link control protocol should be set to all ones because there are no alternative destinations on the point-to-point connection and no address is necessary. 
     In step  314 , the WAN access device attached to the other end of the point-to-point connection receives the frame transmitted from the NAS. In step  316 , the WAN access device reads the destination address field of the frame to determine whether the address field contains 0×ff or some other address. 
     If the WAN access device determines that the destination address field contains 0×ff, in step  318 , the WAN access device forwards the packet by performing standard routing procedures. This typically includes stripping off the data-link frame and reading the destination address information provided in the network layer header of the packet. 
     If, on the other hand, the WAN access device determines that a number other than 0×ff is provided in the address field of the frame, in step  320  the WAN access device establishes a direct logical channel (e.g. a permanent virtual circuit) between the WAN access device and the ultimate destination of the packet. In step  322 , the WAN access device then stores the NAS port interface number provided in the address field of the data-link frame. In one embodiment, the interface number is stored in a mapping-table, and in particular, it is stored in a table-entry corresponding to the logical channel through which the packet has been forwarded from the WAN access device. 
     When the WAN access device receives a response packet from the network  270  to which it is providing access, in step  324  the WAN access device determines if the channel over which the response was received has a corresponding entry in the mapping-table. If the WAN access device determines no entry exist for the logical channel over which the response was received, in step  326  the WAN access device performs standard routing procedures to determine the next hop for the packet and the interface over which the packet is to be forwarded. In particular, if the packet is to be forwarded over the point-to-point connection  256  to the NAS  254 , the packet is framed into a data-link frame and the address field of the frame is set to 0×ff. The packet is then forwarded over the synchronous line. 
     If an entry in a table storing interface numbers is provided for the logical channel over which the packet was received, in step  328 , the WAN access device frames the packets in a data-link frame. In particular, the WAN access device stores the NAS port interface number, which was stored in the table entry corresponding to the logical channel over which the packet was received, into the destination address field of the data-link frame. The packet is then forwarded over the NAS  254  over the point-to-point connection  256 . 
     When the NAS receives a data-link frame over the point-to-point line  256 , in step  330 , the NAS reads the destination address field of the data-link frame to determine if the frame has a destination address of 0×ff (i.e. it was routed) or has another address. If the packet has a data-link frame address of 0×ff, in step  332 , the NAS performs standard routing procedures and forwards the packet. 
     On the other hand, if the address field of the data-link frame is a port interface number (i.e. any number other than 0×ff), in step  334 , the NAS bypasses the routing procedure and forwards the packet over the port interface specified in the destination address of the data-link frame. 
     As a result, the present invention provides the increased performance advantage of forwarding packets received from point-to-point connections without having to perform routing operations on the packet. 
     Moreover, it should be understood that the asynchronous line connecting the remote node and the NAS could be an Integrated Service Digital Network (ISDN) without requiring any changes to the implementation of the present invention because each ISDN line is understood to be uniquely identifiable with a simple number logically indistinguishable from the number of a port interface. 
     In alternative embodiments, the present invention may be applicable to implementations of the invention in integrated circuits or chip sets, wireless implementations, switching systems products and transmission systems products. For purposes of this application, the terms switching systems products shall be taken to mean private branch exchange (PBXs), central office switching systems that interconnect subscribers, toll/tandem switching systems for interconnecting trunks between switching centers, and broadband core switches found at the center of a service provider&#39;s network that may be fed by broadband edge switches or access muxes, and associated signaling, and support systems and services. 
     The term transmission systems products shall be taken to mean products used by service providers to provide interconnection between their subscribers and their networks such as loop systems, and which provide multiplexing, aggregation and transport between a service provider&#39;s switching systems across the wide area, and associated signaling and support systems and services. 
     The present invention may be implemented on a storage medium having stored thereon instructions which can be used to program a computer to perform the present invention. The storage medium can include, but is not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnet or optical cards, or any type of media suitable for storing electronic instructions. Alternatively, the present invention could be implemented in discrete hardware components such as large-scale integrated circuits (LSI&#39;s), application-specific integrated circuits (ASIC&#39;s) or in firmware. 
     Moreover, in the foregoing specification the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than restrictive sense.