MAC address extension to maintain router information in source routed computer networks
    2.
    发明授权
    MAC address extension to maintain router information in source routed computer networks 有权
    在源路由计算机网络中维护路由器信息的MAC地址扩展

    公开(公告)号:US07474660B1

    公开(公告)日:2009-01-06

    申请号:US09283125

    申请日:1999-03-31

    IPC分类号: H04L12/28

    摘要: The invention solves the problem of maintaining Route information Field (RIF) information in a router for populating the RIF field of packets routed by the router, by storing the RIF information with the Layer 2 address in the address binding table. The address binding table establishes a binding between a Layer 2 address and a Layer 3 address of a station. The Layer 2 address in the address binding table is extended to include the RIF information. The address binding table is normally maintained in the router in an architecture which permits rapid access for fast switching such as cut through routing. A separate RIF cache table, requiring a separate time consuming table look-up is thereby avoided. The address binding table is referred to as the Address Resolution Protocol (ARP) Table in IP protocol. The Layer 2 address is extended to include both MAC address and REF information. The RIF information in the Layer 2 field of the ARP table is updated in response to execution of an ARP Explorer protocol by the router. RIF information is read from an ARP Explorer response packet and written into the Layer 2 field of the ARP table. The Layer 2 address, both MAC address and RIF information, is read from the ARP table for use in populating both the destination address field and the RIF field of a routed packet.

    摘要翻译: 本发明解决了在路由器中维护路由信息字段(RIF)信息的问题,通过在地址绑定表中存储具有二层地址的RIF信息来填充由路由器路由的分组的RIF字段。 地址绑定表在站点的二层地址和三层地址之间建立绑定。 地址绑定表中的二层地址扩展为包含RIF信息。 地址绑定表通常在路由器中维护,该架构允许快速访问快速切换,例如切换路由。 因此避免了单独的RIF缓存表,需要单独的耗时的表查找。 地址绑定表称为IP协议中的地址解析协议(ARP)表。 二层地址扩展为包含MAC地址和RIF信息。 响应于路由器执行ARP Explorer协议,ARP表的第2层字段中的RIF信息被更新。 RIF信息从ARP Explorer响应包中读取并写入ARP表的第2层字段。 从ARP表中读取第二层地址(MAC地址和RIF信息),用于填充路由数据包的目的地址字段和RIF字段。

    Packet processing using non-sequential encapsulation and decapsulation chains

    公开(公告)号:US06601106B1

    公开(公告)日:2003-07-29

    申请号:US09418781

    申请日:1999-10-15

    IPC分类号: G06F15173

    CPC分类号: H04L29/06 H04L49/90 H04L69/18

    摘要: A method for processing packets in a router includes specifying operations on packets as chains of processing elements. Each chain is uniquely associated with one interface/protocol pair, and each processing element performs at least one function on a packet. An incoming packet is received, and processed, first by a demultiplexor element which determines the protocol of the next higher level used by the packet. Then, the packet is processed by the elements of a decapsulation chain associated with the interface on which the packet was received, and by the elements of an encapsulation chain associated with the interface on which the packet is to be transmitted. The demultiplexor element or operation passes the packet on to a decapsulation chain associated with the protocol and with the incoming interface, depending on protocol information contained in the incoming packet. Decapsulation and encapsulation chains can be built dynamically, by inserting new and removing old elements as necessary as new protocols are developed and new features added. A chain walker walks through the chains, passing the processed packet to each element in a chain, until either the end of the chain is reached and processing is complete, or until the packet is dropped because no function can process it, or because a packet is processed by an outside process or by hardware, which may optionally stop the chain walk. A chain walk may be temporarily halted, or may be terminated. If temporarily halted, the chain walk can be resumed at any element in the chain, depending on the packet's requirements. A chain walk can also begin at any element in a chain. Alternate branches within the chain can be provided, where each branch can comprise zero or more elements. A classifier determines which branch to take, based on at least one characteristic of the packet being processed, and executes the elements of the selected branch.