×

Method and apparatus for multiprotocol switching and routing

  • US 6,876,654 B1
  • Filed: 04/10/1998
  • Issued: 04/05/2005
  • Est. Priority Date: 04/10/1998
  • Status: Expired due to Fees
First Claim
Patent Images

1. An apparatus for forwarding packets between ports, said ports including a first port associated with a first host having a first layer 2 address and a first layer 3 address, and a second port associated with a second host having a second layer 2 address and a second layer 3 address, a layer 2 flow of packets between said first and second hosts being based on said first and second layer 2 addresses, a layer 3 flow of packets between said first and second hosts being based on said first and second layer 3 addresses, said apparatus comprising:

  • a flow table comprising a plurality of address resolution records stored in an address resolution record table including;

    a first address resolution record that corresponds said first port with said first layer 2 address, a second address resolution record that corresponds said first port with said first layer 3 address, a third address resolution record that corresponds said second port with said second layer 2 address, and a fourth address resolution record that corresponds said second port with said second layer 3 address, wherein said first and second hosts have first and second sockets, respectively, said layer 3 flow being further based on said first and second sockets, said second address resolution record further corresponding said first port with said first socket, said fourth address resolution record further corresponding said second port with said second socket;

    a switch module coupled to said ports and said flow table that detects said layer 2 flow arriving at one of said first and second ports, and forwards packets belonging thereto to the other of said first and second ports based on said first and third address resolution records, said switch module also detecting said layer 3 flow arriving at one of said first and second ports, and forwards packets belonging thereto to the other of said first and second ports based on said second and fourth address resolution records;

    a CPU coupled to said flow table and communicating with said switch module, said CPU creating said first, second, third and fourth address resolution records in said address resolution record table;

    a switch engine that determines whether said first and third address resolution records exist in said address resolution record table when said first flow is detected, and whether said second and fourth address resolution records exist in said address resolution record table when said second flow is detected; and

    a CPU interface that sends a first message to said CPU when said first flow is detected and said switch engine determines that said first and third address resolution records do not exist in said address resolution record table, said CPU interface sends a second message to said CPU when said second flow is detected and said switch engine determines that said second and fourth address resolution records do not exist in said address resolution record table, said CPU creating said first and third address resolution records in response to said first message, and said second and fourth address resolution records in response to said second message, wherein said flow table further includes an address resolution hash table comprising a plurality of address resolution hash records including;

    a first address resolution hash record that corresponds a portion of said first layer 2 address with said first address resolution record;

    a second address resolution hash record that corresponds a portion of said first layer 3 address with said second address resolution record;

    a third address resolution hash record that corresponds a portion of said second layer 2 address with said third address resolution record; and

    a fourth address resolution hash record that corresponds a portion of said second layer 3 address with said fourth address resolution record, said switch module accessing said first, second, third and fourth address resolution records in accordance with said corresponding portions of said addresses and said first, second, third and fourth address resolution record hash records, respectively, said CPU linking said first and third address resolution hash records with said first and third address resolution records, respectively, in response to said first message, and linking said second and fourth address resolution hash records with said second and fourth address resolution records, respectively, in response to said second message.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×