KR20130136522A - 하이브리드 통신 네트워크들에 대한 어드레싱 방식 - Google Patents

하이브리드 통신 네트워크들에 대한 어드레싱 방식 Download PDF

Info

Publication number
KR20130136522A
KR20130136522A KR1020137026320A KR20137026320A KR20130136522A KR 20130136522 A KR20130136522 A KR 20130136522A KR 1020137026320 A KR1020137026320 A KR 1020137026320A KR 20137026320 A KR20137026320 A KR 20137026320A KR 20130136522 A KR20130136522 A KR 20130136522A
Authority
KR
South Korea
Prior art keywords
communication
address
network device
packet
source
Prior art date
Application number
KR1020137026320A
Other languages
English (en)
Other versions
KR101502263B1 (ko
Inventor
쥬니어 시드니 비 슈럼
Original Assignee
퀄컴 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 퀄컴 인코포레이티드 filed Critical 퀄컴 인코포레이티드
Publication of KR20130136522A publication Critical patent/KR20130136522A/ko
Application granted granted Critical
Publication of KR101502263B1 publication Critical patent/KR101502263B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5691Access to open networks; Ingress point selection, e.g. ISP selection
    • H04L12/5692Selection among different networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/677Multiple interfaces, e.g. multihomed nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

하이브리드 네트워크 디바이스는 소스/목적지 어드레스와 대응하는 소스/목적지 통신 인터페이스들 간의 일관성을 유지하기 위해 어드레스 관리 방식을 구현할 수 있다. 하나의 실시형태에서, 제 1 네트워크 디바이스는 제 2 네트워크 디바이스에 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택할 수 있다. 소스 어드레스는 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 결정될 수 있다. 목적지 어드레스는 선택된 제 1 네트워크 경로에 적어도 부분적으로 기초하여 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 결정될 수 있다. 소스 어드레스 및 목적지 어드레스를 적어도 포함하는 패킷은 제 1 네트워크 경로를 통해 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 송신될 수 있다.

Description

하이브리드 통신 네트워크들에 대한 어드레싱 방식{ADDRESSING SCHEME FOR HYBRID COMMUNICATION NETWORKS}
관련 출원
본 출원은 2011년 3월 8일자로 출원된 미국 가출원 제61/450,462호 및 2011년 7월 22일자로 출원된 미국 출원 제13/189,272호의 우선권 이익을 주장한다.
본 발명의 요지의 실시형태들은 일반적으로 통신 시스템들의 분야에 관한 것으로, 보다 구체적으로, 하이브리드 통신 네트워크들에 대한 어드레싱 방식에 관한 것이다.
하이브리드 통신 네트워크들 (예를 들어, 하이브리드 홈 네트워크들) 은 통상, 단일의 확장된 통신 네트워크를 형성하기 위하여 상이한 네트워크 기술들을 이용하는 디바이스들 간에 패킷들을 포워딩하는 브릿징-가능 디바이스들을 이용하여 상호접속되는 다중 네트워킹 기술들 (예를 들어, Wi-Fi®, 홈플러그 AV, 이더넷 등) 을 포함한다. 통상적으로, 통신 메커니즘들 및 프로토콜 세부 사항 (예를 들어, 디바이스 및 토폴로지 발견 프로토콜들, 브릿징 프로토콜들 등) 은 각각의 네트워킹 기술에 고유하다. 하이브리드 통신 네트워크는 하이브리드 통신 디바이스들 및 종래의 (또는 레거시 (legacy)) 통신 디바이스들을 포함할 수 있다. 종래의 통신 디바이스들은 통상 단일의 통신 프로토콜 (예를 들어, 인터넷 프로토콜 - IPv4 또는 IPv6) 을 지원하는 단일의 네트워킹 인터페이스를 구현한다. 한편, 하이브리드 통신 디바이스들은 통상 다중 네트워킹 기술들에 걸쳐 동작하도록 구성되는 다중 통신 인터페이스들 (예를 들어, 이들 각각은 상이한 통신 기술들을 지원할 수 있다) 을 포함한다.
일부 실시형태들에서, 방법은 : 통신 네트워크의 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하도록 결정하는 단계; 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하는 단계; 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계; 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하기 위해 선택된 제 1 네트워크 경로에 적어도 부분적으로 기초하여 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계; 및 제 1 네트워크 경로를 통해 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 제 2 네트워크 디바이스의 목적지 통신 인터페이스에, 제 1 네트워크 디바이스와 연관된 소스 어드레스 및 제 2 네트워크 디바이스와 연관된 목적지 어드레스를 적어도 포함하는 패킷을 송신하는 단계를 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스와 연관된 소스 어드레스는 제 1 네트워크 디바이스의 소스 통신 인터페이스와 연관된 매체 액세스 제어 (media access control; MAC) 어드레스를 포함하고, 제 2 네트워크 디바이스와 연관된 목적지 어드레스는 제 2 네트워크 디바이스의 목적지 통신 인터페이스와 연관된 MAC 어드레스를 포함한다.
일부 실시형태들에서, 방법은, 패킷의 특성들에 기초하여 패킷을 위해 복수의 분류 카테고리들로부터 제 1 분류 카테고리를 선택하는 단계; 패킷을 송신하기 위해 선택된 제 1 네트워크 경로를 패킷을 위해 선택된 제 1 분류 카테고리와 연관시키는 단계; 및 패킷을 송신하기 위해 선택된 제 1 네트워크 경로의, 패킷을 위해 선택된 제 1 분류 카테고리와의 연관성을 저장하는 단계를 더 포함한다.
일부 실시형태들에서, 방법은, 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 제 2 패킷을 송신하도록 결정하는 단계; 제 2 패킷이 제 2 패킷의 특성들에 기초하여 제 1 분류 카테고리와 연관된다는 것을 결정하는 단계; 및 제 2 패킷이 제 2 패킷의 특성들에 기초하여 제 1 분류 카테고리와 연관된다는 것을 결정하는 것에 응답하여, 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 제 2 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하는 단계를 더 포함한다.
일부 실시형태들에서, 패킷의 특성들은 상위 프로토콜 계층 목적지 어드레스, 상위 프로토콜 계층 소스 어드레스, 하위 프로토콜 계층 목적지 어드레스, 하위 프로토콜 계층 소스 어드레스, 패킷과 연관된 우선순위, 패킷과 연관된 레이턴시, 패킷 타입, 패킷이 송신될 통신 프로토콜, 패킷이 송신될 통신 포트, 패킷이 송신될 통신 네트워크, 및 패킷을 생성한 애플리케이션 중 적어도 하나를 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계는, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들로부터 소스 통신 인터페이스를 선택하는 단계, 및 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하는 단계를 포함하며; 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들로부터 목적지 통신 인터페이스를 선택하는 단계, 및 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스를 결정하는 단계를 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하는 단계는, 패킷으로부터, 패킷을 송신하기 위해 선택되는 제 1 네트워크 디바이스와 연관된 오리지널 소스 어드레스를 검출하는 단계; 오리지널 소스 어드레스가 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하는지 여부를 결정하는 단계; 및 오리지널 소스 어드레스가 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 오리지널 소스 어드레스를 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스로 덮어쓰는 단계 (overwriting), 및 패킷의 송신을 위해 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 이용하는 단계를 더 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스를 결정하는 단계는, 패킷으로부터, 패킷을 송신하기 위해 제 1 네트워크 디바이스에 의해 선택되는 제 2 네트워크 디바이스와 연관된 오리지널 목적지 어드레스를 검출하는 단계; 오리지널 목적지 어드레스가 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스에 매칭하는지 여부를 결정하는 단계; 및 오리지널 목적지 어드레스가 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 오리지널 목적지 어드레스를 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스로 덮어쓰는 단계, 및 패킷의 송신을 위해 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스를 이용하는 단계를 더 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계는 : 소스 어드레스로서 제 1 네트워크 디바이스의 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 복수의 어드레스들 중 제 1 어드레스를 선택하는 단계로서, 제 1 네트워크 디바이스의 복수의 인터페이스들 중 제 1 인터페이스는 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 단계, 소스 어드레스로서 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 단계로서, 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스는 제 1 네트워크 디바이스의 복수의 인터페이스들과 연관된 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 단계, 제 1 네트워크 디바이스와 연관된 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 제 1 네트워크 디바이스와 연관된 복수의 어드레스들로부터 소스 어드레스를 선택하는 단계, 및 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 제 1 네트워크 디바이스와 연관된 복수의 어드레스들로부터 소스 어드레스를 선택하는 단계 중 하나를 더 포함한다.
일부 실시형태들에서, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는, 목적지 어드레스로서 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 복수의 어드레스들 중 제 1 어드레스를 선택하는 단계로서, 제 2 네트워크 디바이스의 복수의 인터페이스들 중 제 1 인터페이스는 목적지 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 단계, 목적지 어드레스로서 제 2 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 단계로서, 제 2 네트워크 디바이스와 연관된 미리결정된 어드레스는 제 2 네트워크 디바이스의 복수의 인터페이스들과 연관된 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 단계, 제 2 네트워크 디바이스와 연관된 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 제 2 네트워크 디바이스와 연관된 복수의 어드레스들로부터 목적지 어드레스를 선택하는 단계, 목적지 어드레스로서 제 1 네트워크 경로에 대응하는 제 2 네트워크 디바이스와 연관된 복수의 어드레스들 중 하나의 어드레스를 선택하는 단계, 및 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 제 2 네트워크 디바이스와 연관된 복수의 어드레스들로부터 목적지 어드레스를 선택하는 단계 중 하나를 더 포함한다.
일부 실시형태들에서, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들을 발견하는 단계를 포함하며; 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들을 발견하는 단계는, 제 2 네트워크 디바이스로부터, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하는 단계, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 제 2 네트워크 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하는 단계, 및 제 2 네트워크 디바이스로부터, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하는 단계 중 적어도 하나를 포함한다.
일부 실시형태들에서, 통신 디바이스는 : 네트워크 인터페이스; 및 네트워크 인터페이스와 커플링된 어드레스 선택 및 라우팅 유닛을 포함하며, 어드레스 선택 및 라우팅 유닛은 통신 네트워크의 통신 디바이스로부터 제 2 통신 디바이스에 패킷을 송신하도록 결정하는 것에 응답하여, 통신 디바이스로부터 제 2 통신 디바이스에 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하고; 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하고; 통신 디바이스로부터 제 2 통신 디바이스에 패킷을 송신하기 위해 선택된 제 1 네트워크 경로에 적어도 부분적으로 기초하여 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하며; 제 1 네트워크 경로를 통해 통신 디바이스의 소스 통신 인터페이스로부터 제 2 통신 디바이스의 목적지 통신 인터페이스에, 통신 디바이스와 연관된 소스 어드레스 및 제 2 통신 디바이스와 연관딘 목적지 어드레스를 적어도 포함하는 패킷을 송신하도록 동작가능하다.
일부 실시형태들에서, 어드레스 선택 및 라우팅 유닛은 또한, 패킷의 특성들에 기초하여 패킷을 위해 복수의 분류 카테고리들로부터 제 1 분류 카테고리를 선택하는 것으로서, 패킷의 특성들은, 상위 프로토콜 계층 목적지 어드레스, 상위 프로토콜 계층 소스 어드레스, 하위 프로토콜 계층 목적지 어드레스, 하위 프로토콜 계층 소스 어드레스, 패킷과 연관된 우선순위, 패킷과 연관된 레이턴시, 패킷 타입, 패킷이 송신될 통신 프로토콜, 패킷이 송신될 통신 포트, 패킷이 송신될 통신 네트워크, 및 패킷을 생성한 애플리케이션 중 적어도 하나를 포함하는, 상기 제 1 분류 카테고리를 선택하고; 패킷을 송신하기 위해 선택된 제 1 네트워크 경로를 패킷을 위해 선택된 제 1 분류 카테고리와 연관시키며; 패킷을 송신하기 위해 선택된 제 1 네트워크 경로의, 패킷을 위해 선택된 제 1 분류 카테고리와의 연관성을 저장하도록 동작가능하다.
일부 실시형태들에서, 어드레스 선택 및 라우팅 유닛은 또한, 통신 디바이스로부터 제 2 통신 디바이스에 제 2 패킷을 송신하도록 결정하고; 제 2 패킷이 제 2 패킷의 특성들에 기초하여 제 1 분류 카테고리와 연관된다는 것을 결정하며; 어드레스 선택 및 라우팅 유닛이 제 2 패킷이 제 2 패킷의 특성들에 기초하여 제 1 분류 카테고리와 연관된다는 것을 결정하는 것에 응답하여, 통신 디바이스의 소스 통신 인터페이스로부터 제 2 통신 디바이스의 목적지 통신 인터페이스에 제 2 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하도록 동작가능하다.
일부 실시형태들에서, 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛은, 통신 디바이스의 복수의 통신 인터페이스들로부터 소스 통신 인터페이스를 선택하고, 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛을 포함하며; 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛은, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들로부터 목적지 통신 인터페이스를 선택하고, 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 제 2 통신 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛을 포함한다.
일부 실시형태들에서, 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛은, 패킷으로부터, 패킷을 송신하기 위해 선택되는 통신 디바이스와 연관된 오리지널 소스 어드레스를 검출하고; 오리지널 소스 어드레스가 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하는지 여부를 결정하며; 어드레스 선택 및 라우팅 유닛이 오리지널 소스 어드레스가 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 오리지널 소스 어드레스를 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스로 덮어쓰고, 패킷의 송신을 위해 통신 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 이용하도록 동작가능한 어드레스 선택 및 라우팅 유닛을 더 포함한다.
일부 실시형태들에서, 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛은, 소스 어드레스로서 통신 디바이스의 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 복수의 어드레스들 중 제 1 어드레스를 선택하는 것으로서, 통신 디바이스의 복수의 인터페이스들 중 제 1 인터페이스는 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하거나, 또는 소스 어드레스로서 통신 디바이스와 연관된 미리결정된 어드레스를 선택하는 것으로서, 통신 디바이스와 연관된 미리결정된 어드레스는 통신 디바이스의 복수의 인터페이스들과 연관된 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하도록 동작가능한 어드레스 선택 및 라우팅 유닛을 더 포함한다.
일부 실시형태들에서, 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하도록 동작가능한 어드레스 선택 및 라우팅 유닛은, 제 2 통신 디바이스로부터, 제 2 통신 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하도록 동작가능한 어드레스 선택 및 라우팅 유닛, 제 2 통신 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 제 2 통신 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하도록 동작가능한 어드레스 선택 및 라우팅 유닛, 및 제 2 통신 디바이스로부터, 제 2 통신 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하도록 동작가능한 어드레스 선택 및 라우팅 유닛 중 적어도 하나를 포함한다.
일부 실시형태들에서, 명령들을 저장하고 있는 하나 이상의 머신 판독가능 저장 매체로서, 명령들은, 하나 이상의 프로세서들에 의해 실행될 때, 하나 이상의 프로세서들로 하여금, 통신 네트워크의 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하도록 결정하는 것에 응답하여 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하기 위해 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하는 동작; 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작; 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하기 위해 선택된 제 1 네트워크 경로에 적어도 부분적으로 기초하여 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작; 및 제 1 네트워크 경로를 통해 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 제 2 네트워크 디바이스의 목적지 통신 인터페이스에, 제 1 네트워크 디바이스와 연관된 소스 어드레스 및 제 2 네트워크 디바이스와 연관된 목적지 어드레스를 적어도 포함하는 패킷을 송신하는 동작을 포함하는 동작들을 수행하도록 한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작은, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들로부터 소스 통신 인터페이스를 선택하는 것, 및 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하는 것을 포함하며; 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작은, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들로부터 목적지 통신 인터페이스를 선택하는 것, 및 패킷을 송신하기 위해 선택된 제 1 네트워크 경로와 연관된 제 2 네트워크 디바이스의 목적지 통신 인터페이스에 대응하는 목적지 어드레스를 결정하는 것을 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 결정하는 동작은, 패킷으로부터, 패킷을 송신하기 위해 선택되는 제 1 네트워크 디바이스와 연관된 오리지널 소스 어드레스를 검출하는 것; 오리지널 소스 어드레스가 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하는지 여부를 결정하는 것; 및 오리지널 소스 어드레스가 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 오리지널 소스 어드레스를 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스로 덮어쓰는 것, 및 패킷의 송신을 위해 제 1 네트워크 디바이스의 소스 통신 인터페이스에 대응하는 소스 어드레스를 이용하는 것을 더 포함한다.
일부 실시형태들에서, 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작은, 소스 어드레스로서 제 1 네트워크 디바이스의 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 복수의 어드레스들 중 제 1 어드레스를 선택하는 것으로서, 제 1 네트워크 디바이스의 복수의 인터페이스들 중 제 1 인터페이스는 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 것, 소스 어드레스로서 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 것으로서, 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스는 제 1 네트워크 디바이스의 복수의 인터페이스들과 연관된 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 것; 제 1 네트워크 디바이스와 연관된 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 제 1 네트워크 디바이스와 연관된 복수의 어드레스들로부터 소스 어드레스들을 선택하는 것, 및 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 제 1 네트워크 디바이스와 연관된 복수의 어드레스들로부터 소스 어드레스를 선택하는 것 중 하나를 더 포함한다.
일부 실시형태들에서, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작은, 제 2 네트워크 디바이스로부터, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하는 것, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 제 2 네트워크 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하는 것, 및 제 2 네트워크 디바이스로부터, 제 2 네트워크 디바이스의 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하는 것을 포함한다.
첨부 도면들을 참조함으로써 본 실시형태들이 더 잘 이해될 수도 있고, 다수의 목적들, 특징들 및 이점들이 당업자에게 명백해진다.
도 1 은 하이브리드 통신 네트워크들에 대한 어드레싱 방식의 하나의 실시형태를 예시한 일 예의 블록도이다.
도 2 는 하이브리드 통신 네트워크에 대한 어드레싱 방식의 예시적인 동작들을 예시한 플로우도이다.
도 3a 는 소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 복수의 네트워크 경로들을 예시한 일 예의 개념도이다.
도 3b 는 포워딩 디바이스를 통한 소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 복수의 네트워크 경로들을 예시한 일 예의 개념도이다.
도 4 는 하이브리드 통신 네트워크들에 대한 패킷-분류 기반 어드레싱 방식의 예시적인 동작들을 예시한 플로우도이다.
도 5 는 하이브리드 통신 네트워크에 대한 어드레싱 방식을 포함한 전자 디바이스의 하나의 실시형태의 블록도이다.
다음에 오는 설명은 본 발명의 요지의 기법들을 구현하는 예시적인 시스템들, 방법들, 기법들, 명령 시퀀스들, 및 컴퓨터 프로그램 제품들을 포함한다. 그러나, 상기 설명된 실시형태들은 이들 특정 상세들 없이 실시될 수도 있다는 것이 이해된다. 예를 들어, 일부 실시형태들에서, 어드레싱 방식은 무선 근거리 네트워크 (wireless local area network; WLAN) 디바이스들 (예를 들어, IEEE 802.11n), 파워라인 네트워크 디바이스 (powerline network device) 들 (예를 들어, 홈플러그 AV), MoCA (coax network devices), 및 이더넷 디바이스들을 포함하는 하이브리드 통신 네트워크들에 대해 구현될 수 있지만, 다른 실시형태들에서, 어드레싱 방식은 다른 표준들/프로토콜들 (예를 들어, WiMAX 등) 을 구현하는 다른 적합한 타입들의 네트워크 디바이스들을 포함할 수도 있는 하이브리드 통신 네트워크들에서 구현될 수 있다. 다른 경우들에서, 널리 알려져 있는 명령 인스턴스들, 프로토콜들, 구조들, 및 기법들은 설명을 애매하게 만들지 않기 위하여 상세히 도시되지 않았다.
하이브리드 통신 네트워크는 통상 상이한 네트워크 기술들 및 통신 매체에 걸쳐 (상이한 통신 프로토콜들을 지원하는) 통신 네트워크들의 상호접속으로서 형성된다. 하이브리드 통신 네트워크는 통상 상이한 네트워크 기술들에 걸쳐 동작하도록 구성되는 하이브리드 디바이스들을 포함한다. 하이브리드 디바이스는 통상 다중 네트워크 인터페이스들 - 이들 각각은 매체 액세스 제어 어드레스 (예를 들어, MAC 어드레스) 와 연관된다 - 을 포함한다. 그러나, 하이브리드 디바이스는 통상 개방형 시스템 간 상호접속 (Open Systems Interconnection; OSI) 프로토콜 스택의 네트워크 계층과 연관된 하나의 어드레스 (예를 들어, 인터넷 프로토콜 (IP) 어드레스) 를 포함하기 때문에, 네트워크 계층 어드레스와 MAC 어드레스 간의 1:1 맵핑이 존재하지 않을 수도 있다. 마찬가지로, 목적지 하이브리드 디바이스는 또한, 다중 통신 인터페이스들, 및 따라서 단일의 목적지 IP 어드레스와 연관된 다중 목적지 MAC 어드레스들을 포함할 수 있다. OSI 프로토콜 스택의 상위 계층들 (예를 들어, 애플리케이션 계층, 네트워크 계층 등) 의 관점에서, 다중 통신 인터페이스들을 구현하는 하이브리드 디바이스는 단일의 근본적인 (underlying) 매체 액세스 제어 계층 및 단일의 물리 계층 (즉, 단일의 MAC/PHY 계층) 및 결과적으로 단일의 MAC 어드레스를 갖는 것으로 나타날 수 있다. 따라서, 일부 경우들에서, 송신되도록 예정된 패킷의 소스 MAC 어드레스 필드는 패킷이 송신될 통신 인터페이스 ("소스 통신 인터페이스") 에 대응하지 않는 MAC 어드레스로 파퓰레이팅될 수도 있다. 마찬가지로, 송신되도록 예정된 패킷의 목적지 MAC 어드레스는 패킷이 수신될 목적지 하이브리드 디바이스의 통신 인터페이스 ("목적지 통신 인터페이스") 에 대응하지 않는 MAC 어드레스로 파퓰레이팅될 수도 있다. 목적지 하이브리드 디바이스는 부정확한 목적지 MAC 어드레스와 함께 목적지 통신 인터페이스에서 수신되는 각각의 패킷을 필터링/폐기할 수도 있다. 더욱이, 패킷들에서의 소스 MAC 어드레스들 및 목적지 MAC 어드레스들의 부정확하고 일관성 없는 사용은 또한, 하이브리드 통신 네트워크에서의 종래의 러닝 브릿지 (learning bridge) 들로 하여금, 일관성 없는 패킷들을 드롭하도록 하여, 성능 열화를 초래할 수 있다.
일부 실시형태들에서, 어드레스 관리 방식은 단일의 통신 인터페이스 및 IP 와 MAC 어드레스들 간의 일-대-일 맵핑의 상위 계층 프로토콜의 관점과, 하이브리드 디바이스와 연관된 다중 인터페이스들 및 다중 MAC 어드레스의 현실 사이의 비일관성을 다루기 위해 하이브리드 디바이스에 의해 구현될 수 있다. 목적지 하이브리드 디바이스에 패킷을 송신하도록 결정하는 것에 응답하여, 소스 하이브리드 디바이스는 패킷을 목적지 하이브리드 디바이스로 라우팅할 선호된 네트워크 경로를 (소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 다중 이용가능한 네트워크 경로들로부터) 선택할 수 있다. 소스 하이브리드 디바이스는 선호된 네트워크 경로에 적어도 부분적으로 기초하여 패킷이 송신될 소스 통신 인터페이스 및 패킷이 목적지 하이브리드 디바이스에서 수신될 목적지 통신 인터페이스를 식별할 수 있다. 소스 하이브리드 디바이스는 그 후 각각 소스 통신 인터페이스 및 목적지 통신 인터페이스와 연관된 근본적인 소스 MAC 어드레스 및 목적지 MAC 어드레스를 결정할 수 있다. 소스 하이브리드 디바이스는 패킷의 적절한 어드레스 필드들을 소스 MAC 어드레스 및 목적지 MAC 어드레스로 파퓰레이팅할 수 있고, 그 후 선호된 네트워크 경로를 통해 목적지 하이브리드 디바이스에 패킷을 송신할 수 있다. 이러한 어드레싱 방식은 소스 MAC 어드레스와 소스 통신 인터페이스 간 그리고 목적지 MAC 어드레스와 목적지 통신 인터페이스 간의 일관성이 유지되는 것을 보장할 수 있다. 하이브리드 통신 네트워크들에 대한 어드레싱 방식은 애플리케이션들을 단일의 통신 인터페이스에 결속시키지 않고, 소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 선호된 네트워크 경로에서 동적 변화 (dynamic variation) 들을 가능하게 할 수 있다. 여기에 설명된 어드레싱 방식은 또한, 기존의 MAC 어드레스 대 디바이스 식별자 맵핑/트랜슬레이션 메커니즘들, 패킷 필터링 기법들, 및 종래의 러닝 브릿지들에 의해 구현된 포워딩 프로토콜들과 양립가능할 수도 있다. 이것은 드롭된 패킷들의 가능성을 최소화하고 하이브리드 통신 네트워크의 성능을 향상시킬 수 있다.
도 1 은 하이브리드 통신 네트워크들에 대한 어드레싱 방식의 하나의 실시형태를 예시한 일 예의 블록도이다. 도 1 은 하이브리드 디바이스들 (102 및 104) 을 포함하는 하이브리드 통신 네트워크 (100) 를 도시한다. 하이브리드 디바이스 (102) 는 어드레스 선택 유닛 (106) 및 라우팅 유닛 (108) 을 포함한다. 도 1 에는 도시하지 않았지만, 하이브리드 디바이스 (104) 는 또한 어드레스 선택 유닛 및 라우팅 유닛을 포함할 수도 있다. 일부 구현들에서, 하이브리드 디바이스들 (102 및 104) 은 OSI 프로토콜 스택을 구현할 수 있다. 일부 구현들에서, OSI 프로토콜 스택의 상위 계층들 (예를 들어, 네트워크 계층, 전송 계층, 및 애플리케이션 계층) 의 관점에서, 하이브리드 디바이스 (102) 는 단일의 근본적인 MAC/PHY 계층, 및 따라서 하이브리드 디바이스 (102) 에 의해 생성된 패킷들에서 파퓰레이팅될 단 하나의 소스 MAC 어드레스를 포함하는 것으로 나타날 수 있다. 그러나, 소스 하이브리드 디바이스 (102) 는 다중 통신 인터페이스들을 구현하기 때문에, 소스 하이브리드 디바이스 (102) 는 다중 소스 MAC 어드레스들 (예를 들어, 통상 소스 통신 인터페이스 당 하나의 소스 MAC 어드레스) 를 포함할 수 있다. 마찬가지로, 목적지 하이브리드 디바이스 (104) 는 또한, 대응하는 다중 목적지 통신 인터페이스들과 연관된 다중 목적지 MAC 어드레스들을 포함할 수 있다. 도 1 의 스테이지 A 내지 스테이지 F 에서 이하 설명하는 바와 같이, 소스 하이브리드 디바이스 (102) 의 어드레싱 유닛 (106) 은 단일의 통신 인터페이스와 어드레스들의 일-대-일 맵핑의 상위 계층들의 관점과, 하이브리드 디바이스 (102) 와 연관된 다중 통신 인터페이스들 및 다중 MAC 어드레스의 현실 사이의 비일관성을, 송신된 패킷이 적절한 소스 및 목적지 MAC 어드레스들을 포함한다는 것을 보장함으로써 관리하는 기능성을 구현할 수 있다.
스테이지 A 에서, 하이브리드 디바이스 (102) ("소스 하이브리드 디바이스") 는 하이브리드 디바이스 (104) ("목적지 하이브리드 디바이스") 에 패킷을 송신하도록 결정한다. 예를 들어, 라우팅 유닛 (108) 은 목적지 하이브리드 디바이스 (104) 에 송신될 패킷을 (예를 들어, 애플리케이션으로부터) 수신할 수 있다.
스테이지 B 에서, 라우팅 유닛 (108) 은 패킷을 소스 하이브리드 디바이스 (102) 로부터 목적지 하이브리드 디바이스 (104) 로 라우팅할 선호된 네트워크 경로를 선택한다. 일부 구현들에서, 라우팅 유닛 (108) 은 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 하나 이상의 사전 결정된 네트워크 경로들의 표시를 저장할 수 있다. 하나 이상의 네트워크 경로들은 소스 하이브리드 디바이스 (102) 및 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들의 개수에 기초하여 결정될 수 있다. 예를 들어, 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 네트워크 경로들의 개수는 N×M 일 수도 있으며, 여기서 N 은 소스 하이브리드 디바이스 (102) 와 연관된 통신 인터페이스들의 개수이고, M 은 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들의 개수이다. 일부 구현들에서, 라우팅 유닛 (108) 은 하이브리드 통신 네트워크 (100) 의 토폴로지, 하이브리드 통신 네트워크 (100) 에서의 레거시 브릿지들 및 하이브리드 브릿지들의 존재, 레거시 브릿지들 및 하이브리드 브릿지들과 연관된 포워딩 테이블들, 하이브리드 통신 네트워크 (100) 의 다양한 통신 링크들에 대한 트래픽들 등에 기초하여 선호된 네트워크 경로를 선택할 수 있다. 선호된 네트워크 경로가 선택된 후, 어드레스 선택 유닛 (106) 은 스테이지 C 내지 스테이지 F 에서 설명하는 바와 같이, 각각 패킷에서의 소스 및 목적지 MAC 어드레스들과 소스 및 목적지 통신 인터페이스들 간의 일관성을 유지하는 기능성을 구현할 수 있다.
스테이지 C 에서, 어드레스 선택 유닛 (106) 은 선호된 네트워크 경로에 적어도 부분적으로 기초하여 소스 통신 인터페이스 및 목적지 통신 인터페이스를 식별한다. 선호된 네트워크 경로는 통상 소스 하이브리드 디바이스 (102) 가 패킷을 송신할 소스 통신 인터페이스를 나타내는 "첫 번째 홉 (first hop)" 링크를 포함한다. 따라서, 어드레스 선택 유닛 (106) 은 패킷을 송신할 소스 통신 인터페이스로서 소스 하이브리드 디바이스 (102) 와 연관된 다중 통신 인터페이스들 중 하나의 통신 인터페이스를 선택할 수 있다. 다른 실시형태들에서, 다양한 다른 기법들이 도 2 에 추가 설명되는 바와 같이, 소스 통신 인터페이스를 결정하기 위해 채용될 수도 있다. 선호된 네트워크 경로는 또한 목적지 하이브리드 디바이스 (104) 가 패킷을 수신할 목적지 통신 인터페이스를 나타내는 "마지막 홉 (last hop)" 링크를 나타낼 수 있다. 따라서, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 가 패킷을 수신할 것으로 예상되는 목적지 통신 인터페이스로서 목적지 하이브리드 디바이스 (104) 와 연관된 다중 통신 인터페이스들 중 하나의 통신 인터페이스를 선택할 수 있다.
스테이지 D 에서, 어드레스 선택 유닛 (106) 은 식별된 소스 통신 인터페이스에 대응하는 소스 MAC 어드레스 및 식별된 목적지 통신 인터페이스에 대응하는 목적지 MAC 어드레스를 식별한다. 소스 및 목적지 통신 인터페이스들, 및 결과적으로 소스 및 목적지 MAC 어드레스들은 다양한 기준에 따라 선택될 수 있다. 하나의 예에서, 소스 MAC 어드레스 및 목적지 MAC 어드레스는 하이브리드 디바이스들 (102 및 104) 과 연관된 다양한 다른 타입들의 어드레스들 (예를 들어, IP 어드레스) 간의 (맵핑들 또는 트랜슬레이션들이라고도 알려진) 사전 결정된 연관성들에 기초하여 선택될 수 있다. 다른 예로서, 소스 MAC 어드레스 및 목적지 MAC 어드레스는 소스 하이브리드 디바이스 (102) 에서 채용된 라우팅 알고리즘, 하이브리드 통신 네트워크 (100) 에서의 포워딩 디바이스들, 포워딩 디바이스들 중 하나 이상이 종래의 러닝 브릿지들인지 여부, (만약에 있다면) 포워딩 디바이스들과 연관된 포워딩 테이블들, 및 포워딩 디바이스들의 다른 라우팅 거동에 기초하여 선택될 수 있다. 다른 예로서, 소스 MAC 어드레스는 패킷이 종래의 러닝 브릿지에서 드롭될 가능성을 최소화하기 위해 소스 MAC 어드레스가 종래의 러닝 브릿지의 적절한 "러닝된" 포트에서 수신되도록 선택될 수 있다. 다른 실시형태들에서, 다양한 다른 기법들이 도 2 에 추가 설명되는 바와 같이, 소스 MAC 어드레스 및 목적지 MAC 어드레스를 결정하기 위해 채용될 수 있다.
스테이지 E 에서, 어드레스 선택 유닛 (106) 은 패킷의 소스 어드레스 필드를 소스 MAC 어드레스로 파퓰레이팅하고 패킷의 목적지 어드레스 필드를 목적지 MAC 어드레스로 파퓰레이팅한다. 하나의 예에서, 소스 하이브리드 디바이스 (102) 에 의해 송신될 패킷은 목적지 MAC 어드레스, 소스 MAC 어드레스, 목적지 네트워크 어드레스, 및 소스 네트워크 어드레스에 대한 필드들을 포함할 수 있다. 하나의 구현에서, 소스 및 목적지 네트워크 어드레스들은 인터넷 프로토콜 버전 4 (IPv4) 어드레스들, IP 버전 6 (IPv6) 어드레스들, 애플토크 어드레스들, 또는 소스 하이브리드 디바이스 (102) 및 목적지 하이브리드 디바이스 (104) 에 의해 구현된 네트워크 계층 프로토콜들에 의존하는 다른 적합한 네트워크 어드레스들일 수 있다. 소스 및 목적지 MAC 어드레스들은 소스 하이브리드 디바이스 (102) 및 목적지 하이브리드 디바이스 (104) 가 각각 패킷을 송신 및 수신할 통신 인터페이스를 나타낼 수 있다. 어드레스 선택 유닛 (106) 은 소스 MAC 어드레스 필드 및 목적지 MAC 어드레스 필드를 (스테이지 D 에서 결정된) 각각 소스 MAC 어드레스 및 목적지 MAC 어드레스로 파퓰레이팅할 수 있다. 일부 구현들에서, 도 2 에 추가 설명되는 바와 같이, 어드레스 선택 유닛 (106) 은 패킷으로부터 (예를 들어, 상위 프로토콜 계층들에 의해 목적지 하이브리드 디바이스 (104) 와 연관된 디폴트 어드레스로서 선택될 수도 있는) 오리지널 소스 MAC 어드레스를 판독할 수 있고, 그 오리지널 소스 MAC 어드레스를 선택된 소스 통신 인터페이스에 대응하는 (스테이지 D 에서 결정된) 소스 MAC 어드레스에 대해 비교할 수 있다. 어드레스 선택 유닛 (106) 은 매스매칭이 있다면 패킷에서의 소스 MAC 어드레스 필드를 선택된 소스 통신 인터페이스에 대응하는 소스 MAC 어드레스로 덮어쓸 수 있다. 마찬가지로, 어드레스 선택 유닛 (106) 은 패킷에서의 오리지널 목적지 MAC 어드레스와 선택된 목적지 통신 인터페이스에 대응하는 목적지 MAC 어드레스 간에 미스매칭이 있다면 패킷에서의 목적지 MAC 어드레스 필드를 선택된 목적지 통신 인터페이스에 대응하는 (스테이지 D 에서 결정된) 목적지 MAC 어드레스로 덮어쓸 수 있다. 추가적으로, 일부 구현들에서, 어드레스 선택 유닛 (106) 은 패킷이 또한 소스 하이브리드 디바이스 (102) 에 할당된 소스 IP 어드레스, 목적지 하이브리드 디바이스 (104) 에 할당된 목적지 IP 어드레스, 소스 하이브리드 디바이스 (102) 에 할당된 소스 디바이스 식별자, 및 목적지 하이브리드 디바이스 (104) 에 할당된 목적지 디바이스 식별자를 포함한다는 것을 보장할 수 있다.
스테이지 F 에서, 소스 하이브리드 디바이스 (102) 는 선호된 네트워크 경로를 통해 목적지 하이브리드 디바이스 (104) 에 소스 MAC 어드레스 및 목적지 MAC 어드레스를 포함하는 패킷을 송신한다.
도 2 는 하이브리드 통신 네트워크에 대한 어드레싱 방식의 예시적인 동작들을 예시한 플로우도 ("플로우") (200) 이다. 플로우 (200) 는 블록 202 에서 시작한다.
블록 202 에서, 소스 하이브리드 디바이스는 목적지 하이브리드 디바이스에 패킷을 송신하도록 결정한다. 도 1 의 예에서, 소스 하이브리드 디바이스 (102) 의 라우팅 유닛 (108) 은 목적지 하이브리드 디바이스 (104) 에 패킷을 송신하도록 결정할 수 있다. 플로우는 블록 204 에서 계속된다.
블록 204 에서, 선호된 네트워크 경로가 소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 다중 이용가능한 네트워크 경로들로부터 선택된다. 예를 들어, 라우팅 유닛 (108) 은 소스 하이브리드 디바이스 (102) 로부터 목적지 하이브리드 디바이스 (104) 에 패킷을 송신할 선호된 네트워크 경로를 선택할 수 있다. 일부 구현들에서, 다중 네트워크 경로들은 하이브리드 통신 네트워크 (100) 의 토폴로지 및 하이브리드 통신 네트워크 (100) 에서의 브릿징 디바이스들의 포워딩 능력들의 결과로서 존재할 수도 있다. 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 이용가능한 네트워크 경로들의 개수는 또한 소스 하이브리드 디바이스 (102) 및 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들의 개수에 의존할 수도 있다. 도 3a 는 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 다중 네트워크 경로들을 예시한 일 예의 개념도이다. 하나의 예에서, 도 3a 에 도시한 바와 같이, 소스 하이브리드 디바이스 (102) 는 2 개의 통신 인터페이스들 (S1 (304) 및 S2 (302)) 을 포함한다. 목적지 하이브리드 디바이스 (104) 는 또한 2 개의 통신 인터페이스들 (D1 (306) 및 D2 (308)) 을 포함한다. 따라서, 이 예에는, 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간에 4 개의 가능한 네트워크 경로들이 존재할 수 있다. 4 개의 네트워크 경로들은 경로 (S1, D1) (310), 경로 (S1, D2) (312), 경로 (S2, D1) (314), 및 경로 (S2, D2) (316) 로서 나타내진다. 보다 일반적으로, 패킷을 소스 하이브리드 디바이스 (102) 로부터 목적지 하이브리드 디바이스 (104) 로 라우팅하는데 이용가능한 네트워크 경로들의 최소 개수는 N×M 으로서 나타낼 수 있으며, 여기서 N 은 소스 하이브리드 디바이스 (102) 와 연관된 통신 인터페이스들의 개수를 나타내고, M 은 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들의 개수를 나타낸다.
일부 구현들에서, 4 개의 네트워크 경로들 (310, 312, 314 및 316) 중 하나의 경로는 송신되는 패킷의 타입에 의존하여 (예를 들어, 도 4 에 설명되는 바와 같이, 패킷 분류에 기초하여), 각각의 네트워크 경로에서 사용되는 네트워킹 토폴로지들에 기초하여, 네트워크 경로들 중 일부가 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 를 접속하는 종래의 브릿지 디바이스들을 포함하는지 여부에 기초하여, 등등에 의해 선호된 네트워크 경로로서 선택될 수 있다. 다른 구현들에서, 선호된 네트워크 경로는 하이브리드 통신 네트워크 (100) 의 토폴로지, 하이브리드 통신 네트워크 (100) 에서의 통신 링크들의 링크 품질 특성들 (예를 들어, 서비스 품질 또는 QoS), 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 이용가능한 네트워크 경로들의 개수, 소스 하이브리드 디바이스와 목적지 하이브리드 디바이스 간의 포워딩 디바이스들 (예를 들어, 하나 이상의 네트워크 경로들에서의 종래의 브릿지 디바이스들) 의 존재, 소스 하이브리드 디바이스 및 목적지 하이브리드 디바이스에 의해 지원된 통신 프로토콜들 및 다양한 다른 팩터들에 적어도 부분적으로 기초하여 선택될 수도 있다. 도 3b 를 참조하면, 소스 하이브리드 디바이스 (102) 는 하이브리드 브릿지 (350) 를 통해 목적지 하이브리드 디바이스 (104) 에 커플링된다. 도 3b 에 도시한 바와 같이, 소스 하이브리드 디바이스 (102) 는 2 개의 통신 인터페이스들 (302 및 304) 을 포함하는 한편, 목적지 하이브리드 디바이스 (104) 는 2 개의 통신 인터페이스들 (306 및 308) 을 포함한다. 도 3b 의 예에서, 하이브리드 브릿지 (350) 는 3 개의 통신 인터페이스들 (358, 360 및 362) 을 포함한다. 도 3b 의 하이브리드 통신 네트워크는 3 개의 통신 네트워크들 - 파워라인 통신 네트워크 (352), 이더넷 네트워크 (354), 및 무선 통신 네트워크 (356) - 의 상호접속을 포함한다. 도 3b 에서, 소스 하이브리드 디바이스 (102) 및 하이브리드 브릿지 (350) 는 각각 인터페이스들 (302 및 358) 을 통해 파워라인 통신 네트워크 (352) 와 커플링된다. 목적지 하이브리드 디바이스 (104) 및 하이브리드 브릿지 (350) 는 각각 인터페이스들 (306 및 360) 을 통해 이더넷 네트워크 (354) 와 커플링된다. 마지막으로, 소스 하이브리드 디바이스 (102), 목적지 하이브리드 디바이스 (104), 및 하이브리드 브릿지 (350) 는 각각 인터페이스들 (304, 308 및 362) 을 통해 무선 통신 네트워크 (356) 와 커플링된다. 어드레스 선택 유닛 (106) 은 상기 설명된 팩터들 중 하나 이상 (예를 들어, 하이브리드 통신 네트워크 (100) 의 토폴로지의 지식) 에 기초하여 선호된 네트워크 경로를 선택할 수 있다. 다시 도 2 를 참조하면, 플로우는 블록 206 에서 계속된다.
블록 206 에서, 하이브리드 디바이스와 연관된 소스 통신 인터페이스가 선택된다. 하나의 구현에서, 도 1 에 상기 설명한 바와 같이, 어드레스 선택 유닛 (106) 은 블록 204 에서 결정되는 선호된 네트워크 경로에 적어도 부분적으로 기초하여 소스 통신 인터페이스를 선택할 수 있다. 어드레스 선택 유닛 (106) 은 또한 통신 네트워크 토폴로지 및 선호된 네트워크 경로의 지식에 적어도 부분적으로 기초하여 소스 하이브리드 디바이스 (102) 와 연관된 다중 통신 인터페이스들로부터 소스 통신 인터페이스를 선택할 수도 있다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 소스 하이브리드 디바이스 (102) 와 연관된 통신 인터페이스들 각각과 연관된 트래픽 로드, 송신될 패킷의 타입 (예를 들어, 비디오 패킷, 오디오 패킷 등), 및 다양한 다른 패킷 특성들에 기초하여 소스 통신 인터페이스를 선택할 수 있다. 플로우는 블록 208 에서 계속된다.
블록 208 에서, 목적지 통신 인터페이스가 선호된 네트워크 경로에 적어도 부분적으로 기초하여 선택된다. 예를 들어, 어드레스 선택 유닛 (106) 은 블록 204 에서 결정되는 선호된 네트워크 경로에 적어도 부분적으로 기초하여 목적지 통신 인터페이스를 선택할 수 있다. 도 1 을 참조하여 상기 설명한 바와 같이, 어드레스 선택 유닛 (106) 은 또한 통신 네트워크 토폴로지 및 선호된 네트워크 경로의 지식에 적어도 부분적으로 기초하여 목적지 하이브리드 디바이스 (104) 와 연관된 다중 통신 인터페이스들로부터 목적지 통신 인터페이스를 선택할 수 있다. 플로우는 블록 210 에서 계속된다.
블록 210 에서, 소스 통신 인터페이스에 대응하는 소스 어드레스가 결정된다. 하나의 구현에서, 어드레스 선택 유닛 (106) 은 소스 MAC 어드레스가 (블록 206 에서 선택된) 소스 통신 인터페이스 및 (블록 204 에서 선택된) 선호된 네트워크 경로에 대응하는 MAC 어드레스라는 것을 결정할 수 있다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 (블록 206 에서 결정된) 패킷을 송신하는데 이용될 소스 통신 인터페이스와 관계없이, 소스 하이브리드 디바이스 (102) 와 연관된 다중 통신 인터페이스들 중 하나의 통신 인터페이스에 할당된 미리결정된 MAC 어드레스가 될 소스 MAC 어드레스를 선택할 수 있다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 소스 하이브리드 디바이스 (102) 에 사전 할당된 미리결정된 어드레스를 (소스 MAC 어드레스로서) 선택할 수 있고, 여기서 미리결정된 어드레스는 소스 하이브리드 디바이스 (102) 와 연관된 통신 인터페이스들 중 임의의 통신 인터페이스에 할당되지 않는다. 일부 구현들에서, 어드레스 선택 유닛 (106) 은 선택된 소스 MAC 어드레스가 (선호된 네트워크 경로를 따라) 중간 종래의 러닝 브릿지들의 적절한 "러닝된" 포트에서 수신되는 것을 보장하기 위해 소스 하이브리드 디바이스 (102) 와 연관된 다중 MAC 어드레스로부터 소스 MAC 어드레스를 선택할 수 있다. 다른 구현들에서, 어드레스 선택 유닛 (106) 은 소스 하이브리드 디바이스 (102) 와 연관된 MAC 어드레스를 결정하지 않을 수도 있고, 그 대신 소스 하이브리드 디바이스 (102) 에 의해 구현된 통신 프로토콜들에 의존하여 다른 적합한 타입들의 어드레스들을 결정할 수도 있다는 것에 주목하게 된다. 플로우는 블록 212 에서 계속된다.
블록 212 에서, 목적지 통신 인터페이스에 대응하는 목적지 어드레스가 결정된다. 예를 들어, 어드레스 선택 유닛 (106) 은 목적지 MAC 어드레스가 (블록 208 에서 선택된) 목적지 통신 인터페이스에 대응하는 MAC 어드레스라는 것을 결정할 수 있다. 하나의 구현에서, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 와 연관된 (블록 208 에서 결정된) 동일한 목적지 통신 인터페이스로부터 사전 수신된 통신들에 기초하여 목적지 MAC 어드레스를 결정할 수 있다. 예를 들어, 어드레스 선택 유닛 (106) 은 목적지 MAC 어드레스들을 결정하기 위해 목적지 하이브리드 디바이스 (104) 로부터 수신된 하나 이상의 패킷들 내의 어드레스 필드들을 분석할 수 있다. 대안으로, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들을 발견하고, 결과적으로 목적지 MAC 어드레스들을 발견하기 위해 다양한 기법들을 채용할 수 있다. 하나의 구현에서, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 와 연관된 MAC 어드레스들을 나타내는 하나 이상의 발견 공지 메시지들을 수신할 수 있다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 프로토콜 교환 시퀀스들 (예를 들어, 어드레스 해결 프로토콜 (address resolution protocol; ARP)) 을 개시할 수 있고, 목적지 하이브리드 디바이스 (104) 와 연관된 MAC 어드레스들을 결정하기 위해 목적지 하이브리드 디바이스 (104) 로부터 수신된 하나 이상의 ARP 응답 메시지들을 조사할 수 있다. 어드레스 선택 유닛 (106) 은 목적지 MAC 어드레스로서 (블록 208 에서 결정된) 목적지 통신 인터페이스 및 선호된 네트워크 경로에 대응하는 MAC 어드레스를 선택할 수 있다. 다른 구현들에서, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 와 연관된 MAC 어드레스를 결정하지 않을 수도 있고, 그 대신 소스 하이브리드 디바이스 (102) 에 의해 구현된 통신 프로토콜들에 의존하여 다른 적합한 타입들의 어드레스들을 결정할 수 있다는 것에 주목하게 된다. 플로우는 블록 214 에서 계속된다.
블록 214 에서, 오리지널 소스 어드레스 및 오리지널 목적지 어드레스가 결정된다. 예를 들어, 어드레스 선택 유닛 (106) 은 블록 202 에서 수신된 패킷으로부터 오리지널 소스 MAC 어드레스 및 오리지널 목적지 MAC 어드레스를 판독할 수 있다. 일부 구현들에서, 소스 MAC 어드레스 필드 및 목적지 MAC 어드레스 필드는 소스 하이브리드 디바이스 (102) 와 연관된 상위 계층 프로토콜들에 의해 (예를 들어, 패킷을 생성한 애플리케이션에 의해, 네트워크 프로토콜 계층에 의해, 등등) 삽입된 값들을 포함할 수도 있다. 다른 구현들에서, 소스 MAC 어드레스 필드 및 목적지 MAC 어드레스 필드는 임의의 값들을 포함하지 않을 수도 있다. 즉, 오리지널 소스 MAC 어드레스 및 오리지널 목적지 MAC 어드레스는 NULL 값을 포함할 수도 있다. 어드레스 선택 유닛 (106) 은 블록 216 및 블록 218 에서 추가 설명되는 바와 같이, 소스 MAC 어드레스 필드 및 목적지 MAC 어드레스 필드에서의 값들이 적어도 선호된 네트워크 경로 및 목적지 통신 인터페이스에 따르는 것을 보장하려고 시도할 수 있다. 플로우는 블록 216 에서 계속된다.
블록 216 에서, 오리지널 어드레스들이 선택된 통신 인터페이스들과 연관된 어드레스들에 대응하는지 여부가 결정된다. 예를 들어, 어드레스 선택 유닛 (106) 은 오리지널 소스 MAC 어드레스가 선택된 소스 통신 인터페이스와 연관된 (블록 210 에서 결정된) 소스 MAC 어드레스에 매칭하는지 여부를 결정할 수 있다. 어드레스 선택 유닛 (106) 은 또한 오리지널 목적지 MAC 어드레스가 선택된 목적지 통신 인터페이스와 연관된 (블록 212 에서 결정된) 목적지 MAC 어드레스에 매칭하는지 여부를 결정할 수 있다. 오리지널 MAC 어드레스들의 선택된 통신 인터페이스들과 연관된 MAC 어드레스들과의 비교 시에, 어드레스 선택 유닛 (106) 은 소스 MAC 어드레스가 소스 하이브리드 디바이스 (102) 가 패킷을 송신할 소스 통신 인터페이스와 일치한다는 것을 보장할 수 있고, 목적지 MAC 어드레스가 목적지 하이브리드 디바이스 (104) 가 패킷을 수신할 목적지 통신 인터페이스 및 선호된 네트워크 경로와 일치한다는 것을 보장할 수 있다. 오리지널 소스 어드레스 및 목적지 어드레스 양자가 선택된 통신 인터페이스들과 연관된 대응하는 어드레스들과 동일하다는 것이 결정된다면, 플로우는 블록 220 에서 계속된다. 그렇지 않다면, 플로우는 블록 218 에서 계속된다.
블록 218 에서, 소스 어드레스 필드 및/또는 목적지 어드레스 필드는 선택된 통신 인터페이스에 대응하는 소스 어드레스 및 목적지 어드레스로 각각 파퓰레이팅된다. 예를 들어, 오리지널 소스 MAC 어드레스가 선택된 소스 통신 인터페이스에 대응하는 소스 MAC 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 어드레스 선택 유닛 (106) 은 패킷의 소스 어드레스 필드를 선택된 소스 통신 인터페이스에 대응하는 소스 MAC 어드레스로 덮어쓸 수 있다. 마찬가지로, 오리지널 목적지 MAC 어드레스가 선택된 목적지 통신 인터페이스에 대응하는 목적지 MAC 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여, 어드레스 선택 유닛 (106) 은 패킷의 목적지 어드레스 필드를 선택된 목적지 통신 인터페이스에 대응하는 목적지 MAC 어드레스로 덮어쓸 수 있다. 더욱이, 도 1 에 상기 설명한 바와 같이, 어드레스 선택 유닛 (106) 은 또한, 소스 IP 어드레스, 목적지 IP 어드레스, 소스 디바이스 식별자, 및 목적지 디바이스 식별자가 소스 하이브리드 디바이스 (102) 및 목적지 하이브리드 디바이스 (104) 에 할당된 값들과 일치한다는 것을 보장할 수 있다. 플로우는 블록 220 에서 계속된다.
블록 220 에서, 패킷은 선호된 네트워크 경로를 통해 목적지 하이브리드 디바이스에 송신된다. 예를 들어, 라우팅 유닛 (108) 은 선택된 소스 통신 인터페이스에 대응하는 소스 MAC 어드레스 및 선택된 목적지 통신 인터페이스에 대응하는 목적지 MAC 어드레스를 포함하는 패킷을 목적지 하이브리드 디바이스 (104) 에 송신할 수 있다 (또는 트랜시버 유닛으로 하여금 송신하도록 할 수 있다). 도 3a 를 참조하면, 소스 하이브리드 디바이스 (102) 가 경로 (S2, D2) (316) 를 통해 패킷을 송신하도록 결정한다면, 소스 하이브리드 디바이스 (102) 는 패킷의 어드레스 필드들을 각각 소스 통신 인터페이스 (302) 의 MAC 어드레스 및 목적지 통신 인터페이스 (306) 의 MAC 어드레스로 파퓰레이팅할 수 있다. 이제 도 3b 를 참조하면, 소스 하이브리드 디바이스 (102) 는 소스 통신 인터페이스 (302) 로부터 파워라인 통신 네트워크 (352) 를 통해 패킷을 송신할 수 있다; 하이브리드 브릿지 (350) 는 브릿지 인터페이스 (358) 상에서 패킷을 수신하고 브릿지 인터페이스 (260) 로부터 이더넷 통신 네트워크 (354) 를 통해 목적지 하이브리드 디바이스 (104) 로 패킷을 포워딩할 수 있다. 목적지 하이브리드 디바이스 (104) 는 목적지 통신 인터페이스 (306) 상에서 패킷을 수신할 수 있다. 다시 도 2 를 참조하면, 블록 220 으로부터, 플로우는 종료한다.
일부 구현들에서, 송신된 패킷들은 하나 이상의 패킷 특성들에 기초하여 분류될 수 있고, 대응하는 루트 정보가 저장될 수 있다. 저장된 루트 정보는 도 4 에 설명되는 바와 같이, 동일한 패킷 분류와 연관된 후속 패킷들을 라우팅하기 위해 사용될 수 있다.
도 4 는 하이브리드 통신 네트워크들에 대한 패킷-분류 기반 어드레싱 방식의 예시적인 동작들을 예시한 플로우도 (400) 이다. 플로우 (400) 는 블록 402 에서 시작된다.
블록 402 에서, 소스 하이브리드 디바이스가 목적지 하이브리드 디바이스에 패킷을 송신하도록 결정한다. 도 1 의 예에서, 소스 하이브리드 디바이스 (102) 의 라우팅 유닛 (108) 은 목적지 하이브리드 디바이스 (104) 에 패킷을 송신하도록 결정할 수 있다. 플로우는 블록 404 에서 계속된다.
블록 404 에서, 송신되도록 예정된 패킷과 연관된 패킷 분류가 하나 이상의 패킷 특성들에 적어도 부분적으로 기초하여 결정된다. 예를 들어, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 에 송신되도록 예정된 패킷과 연관된 패킷 분류를 결정할 수 있다. 일부 구현들에서, 어드레스 선택 유닛 (106) 은 (블록 402 에서 결정된) 패킷 내의 하나 이상의 필드들을 판독할 수 있고, 그 패킷과 연관된 하나 이상의 패킷 특성들을 결정할 수 있다. 패킷 특성들은 상위 프로토콜 계층 목적지 어드레스 (예를 들어, 목적지 IP 어드레스), 상위 프로토콜 계층 소스 어드레스 (예를 들어, 소스 IP 어드레스), 하위 프로토콜 계층 목적지 어드레스 (예를 들어, 오리지널 목적지 MAC 어드레스), 하위 프로토콜 계층 소스 어드레스 (예를 들어, 오리지널 소스 MAC 어드레스), 패킷의 우선순위, 패킷과 연관된 중요성/긴급성 (또는 허용가능한 레이턴시), 패킷의 타입 (예를 들어, 비디오 패킷, 음성 패킷 등) 등을 포함할 수 있다. 예를 들어, 특정 인코딩 방식을 이용하여 인코딩되는 패킷들 (예를 들어, MPEG 패킷들) 은 동일한 패킷 분류와 연관될 수도 있다. 패킷 특성들은 또한, 패킷이 송신되고 있는 통신 프로토콜, 패킷이 송신될 통신 포트, 및 패킷이 송신될 통신 네트워크 (예를 들어, 파워라인 네트워크, 이더넷 네트워크 등) 를 나타낼 수도 있다. 일부 구현들에서, 패킷 특성들은, 패킷이 패킷들의 스트림의 일부인지 여부, 패킷이 주기적인 송신의 일부인지 여부 등을 나타낼 수도 있다. 어드레스 선택 유닛 (106) 은 또한, 애플리케이션 "스트림들" 에 따라 패킷들을 분류할 수도 있다. 예를 들어, 특정 애플리케이션으로부터 수신된 패킷들은 동일한 패킷 분류와 연관될 수 있다. 일부 구현들에서, 도 4 에 이하 설명되는 바와 같이, 패킷 분류는 선호된 네트워크 경로, 소스 및 목적지 통신 인터페이스들, 소스 및 목적지 MAC 어드레스들 등을 포함하는 라우팅 정보에 관련될 수 있으며, 패킷 전달의 일관성을 향상시키고, 도달 지터를 최소화하며, 비순차 (out-of-order) 전달을 감소시키기 위해 후속 선호된 네트워크 경로 선택 결정 시에 이용될 수 있다. 플로우는 블록 406 에서 계속된다.
블록 406 에서, (블록 404 에서 결정된) 패킷 분류와 연관된 라우팅 정보가 이용가능한지 여부가 결정된다. 상기 설명한 바와 같이, 일부 구현들에서, 라우팅 유닛 (108) 은 패킷 분류 데이터 구조에 하나 이상의 패킷 분류들과 연관된 사전 결정된 루트 정보를 저장할 수 있다. 블록 406 에서, 라우팅 유닛 (108) 은 (블록 402 에서 검출된) 패킷과 연관된 패킷 분류 및 대응하는 라우팅 정보가 이용가능한지 여부를 결정하기 위해 패킷 분류 데이터 구조에 액세스할 수 있다. 패킷 분류와 연관된 라우팅 정보가 이용가능하다는 것이 결정된다면, 플로우는 블록 410 에서 계속된다. 그렇지 않다면, 플로우는 블록 408 에서 계속된다.
블록 408 에서, 패킷 분류와 연관된 사전 저장된 라우팅 정보가 선호된 네트워크 경로, 소스 어드레스, 및 목적지 어드레스를 결정하기 위해 액세스된다. 플로우 (400) 는 패킷 분류와 연관된 라우팅 정보가 이용가능하다는 것이 결정된다면 블록 406 으로부터 블록 408 로 이동한다. 상기 설명한 바와 같이, 어드레스 선택 유닛 (106) 은 하나 이상의 패킷 특성들에 의존하여 상이한 패킷들에 상이한 패킷 분류를 할당할 수 있다. 어드레스 선택 유닛 (106) 은 또한 그들의 패킷 분류에 기초하여 패킷들에 상이한 선호된 네트워크 경로를 할당할 수 있다. 패킷 분류와 연관된 라우팅 정보가 사전 저장되었다는 것을 결정하는 것에 응답하여, 어드레스 선택 유닛 (106) 은 선호된 네트워크 경로, 소스 통신 인터페이스, 목적지 통신 인터페이스, 소스 MAC 어드레스, 및 목적지 MAC 어드레스를 결정하기 위해 패킷 분류와 연관된 라우팅 정보에 액세스할 수 있다. 패킷 분류에 기초한 사전 저장된 라우팅 정보를 이용하는 것은 패킷 프로세싱 시간을 최소화할 수 있고, 또한 동일한 선호된 네트워크 경로를 따라 단-대-단 트래픽을 (예를 들어, 하나의 애플리케이션으로부터 다른 애플리케이션으로) 송신함으로써 통신 중단 (communication disruptions) (예를 들어, 목적지 하이브리드 디바이스 (104) 에서 또는 중간 포워딩 디바이스에서 드롭된 패킷들) 을 막을 수 있다. 플로우는 블록 414 에서 계속된다.
블록 410 에서, 선호된 네트워크 경로가 패킷을 목적지 하이브리드 디바이스로 라우팅하기 위해 선택되고, 소스 어드레스 및 목적지 어드레스는 선호된 네트워크 경로에 적어도 부분적으로 기초하여 결정된다. 플로우 (400) 는 패킷 분류와 연관된 라우팅 정보가 이용가능하지 않다는 것이 결정된다면 블록 406 으로부터 블록 410 으로 이동한다. 예를 들어, 라우팅 유닛 (108) 은 도 1 에서 그리고 도 2 의 블록 204 에서 상기 설명된 동작들에 따라, 패킷을 목적지 하이브리드 디바이스 (104) 로 라우팅하기 위해 선호된 네트워크 경로를 선택할 수 있다. 어드레스 선택 유닛 (106) 은 그 후 도 1 및 도 2 의 블록 206 내지 블록 212 에서 상기 설명한 바와 같이, 선호된 네트워크 경로에 적어도 부분적으로 기초하여 소스 통신 인터페이스, 목적지 통신 인터페이스, 소스 MAC 어드레스, 및 목적지 MAC 어드레스를 결정할 수 있다. 플로우는 블록 412 에서 계속된다.
블록 412 에서, 패킷 분류 및 대응하는 라우팅 정보가 저장된다. 예를 들어, 어드레스 선택 유닛 (106) 은 패킷 분류 및 대응하는 라우팅 정보를 저장할 수 있다. 라우팅 정보는 선호된 네트워크 경로, 소스 및 목적지 통신 인터페이스들, 및 소스 및 목적지 MAC 어드레스들의 표시를 포함할 수 있다. 예를 들어, 데이터 타입 기반 분류 방식을 이용하여, 어드레스 선택 유닛 (106) 은, 비디오 패킷들이 제 1 선호된 네트워크 경로를 통해 라우팅되어야 하고, 음성 패킷들이 제 2 선호된 네트워크 경로를 통해 라우팅되어야 하며, 등등이라는 것을 나타낼 수 있다. 동일한 패킷 분류로 패킷을 후속 검출 시에, 소스 하이브리드 디바이스 (102) 는 저장된 라우팅 정보에 따라 패킷의 어드레스 필드들 파퓰레이팅하고 패킷을 라우팅할 수 있다. 예를 들어, 다른 비디오 패킷을 후속 수신하는 것에 응답하여, 라우팅 유닛 (108) 은 제 1 선호된 네트워크 경로를 통해 비디오 패킷을 라우팅하도록 결정할 수 있다. 플로우는 블록 414 에서 계속된다.
블록 414 에서, 소스 어드레스 및 목적지 어드레스를 포함하는 패킷이 선호된 네트워크 경로를 통해 목적지 하이브리드 디바이스에 송신된다. 예를 들어, 라우팅 유닛 (108) 은 목적지 하이브리드 디바이스 (104) 에 소스 MAC 어드레스 및 목적지 MAC 어드레스를 포함하는 패킷을 송신할 수 있다 (또는 트랜시버 유닛으로 하여금 송신하도록 할 수 있다). 블록 414 로부터, 플로우는 종료한다.
도 1 내지 도 4 가 실시형태들의 이해를 돕기 위한 예들이며, 실시형태들을 제한하거나 특허청구의 범위를 제한하는데 사용되어서는 안된다는 것이 이해되어야 한다. 실시형태들은 추가적인 동작들, 더 적은 동작들, 상이한 순서의 동작들, 병렬의 동작들, 및 일부 동작들을 상이하게 수행할 수도 있다. 도 1 내지 도 4 는 OSI 프로토콜 스택을 구현하는 하이브리드 디바이스들에 대한 어드레싱 방식을 설명하지만, 실시형태들은 이렇게 제한되지 않는다. 다른 구현들에서, 어드레싱 방식은 다른 적합한 프로토콜 스택 아키텍처들을 채용하는 하이브리드 디바이스들로 확대될 수 있다. 추가적으로, 도 1 내지 도 4 는 어드레스 선택 유닛 (106) 이 적절한 소스 MAC 어드레스 및 목적지 MAC 어드레스를 선택하는 것을 설명하지만, 실시형태들은 이렇게 제한되지 않는다. 다른 실시형태들에서, 어드레스 선택 유닛 (106) 은 소스 및 목적지 MAC 어드레스들을 선택하지 않을 수도 있고, 하이브리드 디바이스들에 의해 구현된 통신 프로토콜들에 의존하여, 그리고 하이브리드 디바이스들에서 채용된 네트워크 아키텍처에 기초하여 다른 적합한 어드레스들을 선택할 수도 있다.
다른 실시형태들에서, 도 2 의 블록 212 에서 상기 설명된 기법들 대신에 또는 그 기법들에 더하여, 어드레스 선택 유닛 (106) 은 목적지 MAC 어드레스를 결정하기 위한 다양한 다른 기법들을 채용할 수 있다는 것에 주목하게 된다. 일부 구현들에서, 어드레스 선택 유닛 (106) 은 패킷이 수신될 목적지 통신 인터페이스 또는 패킷이 송신될 네트워크 경로와 관계없이, 목적지 하이브리드 디바이스 (104) 와 연관된 다중 통신 인터페이스들 중 하나의 통신 인터페이스에 할당된 미리결정된 MAC 어드레스가 될 목적지 MAC 어드레스를 선택할 수 있다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 목적지 하이브리드 디바이스 (104) 에 사전 할당된 미리결정된 어드레스를 (목적지 MAC 어드레스로서) 선택할 수 있으며, 여기서 미리결정된 어드레스는 목적지 하이브리드 디바이스 (104) 와 연관된 통신 인터페이스들 중 임의의 통신 인터페이스에 할당되지 않는다. 다른 구현에서, 어드레스 선택 유닛 (106) 은 선택된 목적지 MAC 어드레스가 (선호된 네트워크 경로를 따라) 중간 종래의 러닝 브릿지들의 적절한 "러닝된" 포트에서 수신되는 것을 보장하기 위해 목적지 하이브리드 디바이스 (104) 와 연관된 다중 MAC 어드레스들로부터 목적지 MAC 어드레스를 선택할 수 있다. 다른 구현에서, 목적지 MAC 어드레스는 목적지 하이브리드 디바이스 (104) 와 연관된 다양한 다른 타입들의 어드레스들 (예를 들어, IP 어드레스) 간의 사전 결정된 연관성들에 기초하여 선택될 수 있다.
도면들은 소스 하이브리드 디바이스 (102) 가 소스 하이브리드 디바이스 (102) 와 목적지 하이브리드 디바이스 (104) 간의 선호된 네트워크 경로에 기초하여 소스 통신 인터페이스 및 목적지 통신 인터페이스를 선택하는 것을 도시하지만, 실시형태들은 이렇게 제한되지 않는다. 다른 실시형태들에서, 소스 하이브리드 디바이스 (102) 는 먼저 소스 통신 인터페이스 및 목적지 통신 인터페이스를 선택할 수 있고, 그 후 선택된 소스 통신 인터페이스 및 목적지 통신 인터페이스에 기초하여 선호된 네트워크 경로를 결정할 수 있다. 예를 들어, 소스 하이브리드 디바이스 (102) 는 하이브리드 통신 네트워크로 패킷을 송신할 MAC/PHY 인터페이스를 식별함으로써, 그리고 패킷 내의 소스 어드레스 필드가 이 선택과 일치하는 것을 보장함으로써 패킷을 라우팅하기 위해 완전한 네트워크 경로에서 제 1 링크를 선택할 수 있다. 소스 하이브리드 디바이스 (102) 는 그 후 패킷이 목적지 하이브리드 디바이스 (104) 에 도달할 것으로 예상되는 목적지 MAC/PHY 인터페이스를 식별함으로써, 그리고 패킷 내의 목적지 어드레스 필드가 이 선택과 일치하는 것을 보장함으로써 패킷을 라우팅하기 위해 완전한 네트워크 경로에서 마지막 링크를 선택할 수 있다. 소스 하이브리드 디바이스 (102) 는 그 후 선택된 소스 및 목적지 통신 인터페이스들에 따라 선호된 네트워크 경로를 선택할 수 있다. 도 3a 의 예를 참조하면, 소스 하이브리드 디바이스 (102) 는 패킷이 소스 하이브리드 디바이스 (102) 의 통신 인터페이스 (304) 를 통해 송신되어야 하고 패킷이 목적지 하이브리드 디바이스 (104) 의 통신 인터페이스 (308) 에서 수신될 것을 결정할 수도 있다. 그 결과, 소스 하이브리드 디바이스 (102) 는 선호된 네트워크 경로로서 네트워크 경로 (312) 를 식별할 수 있다.
도 4 를 참조하여 도시하고 있지는 않지만, 하이브리드 디바이스 (102) 는 또한 패킷 분류들 및 패킷 스트림들 각각과 연관된 트래픽의 양을 결정하기 위해 패킷 분류를 이용할 수 있다. 예를 들어, 하이브리드 디바이스 (102) 는 (블록 402 에서 수신된) 패킷이 비디오 스트림의 일부라는 것을 결정할 수도 있다. 하이브리드 디바이스 (102) 는 패킷에 대응하는 패킷 분류를 (예를 들어, 상위 프로토콜 계층 목적지 어드레스 (예를 들어, 목적지 IP 어드레스), 상위 프로토콜 계층 소스 어드레스 (예를 들어, 소스 IP 어드레스), 하위 프로토콜 계층 목적지 어드레스 (예를 들어, 오리지널 목적지 MAC 어드레스), 하위 프로토콜 계층 소스 어드레스 (예를 들어, 오리지널 소스 MAC 어드레스), 패킷과 연관된 우선순위, 패킷과 연관된 레이턴시, 패킷의 타입 등에 기초하여) 할당할 수 있고, 대응하는 선호된 네트워크 경로를 통한 송신을 위해 패킷을 적절한 송신 스트림 (예를 들어, 소스 통신 인터페이스) 에 할당할 수 있다. 하이브리드 디바이스 (102) 는 송신 스트림과 연관된 트래픽 로드 및 스루풋을 결정하기 위해 송신 스트림들 각각과 연관된 트래픽을 분석할 수 있다. 일부 구현들에서, 하이브리드 디바이스 (102) 는 송신 스트림들과 연관된 트래픽 로드 및 스루풋에 기초하여 로드 밸런싱 동작들을 실행할 수 있다. 예를 들어, 비디오 스트림들과 연관된 선호된 네트워크 경로가 높은 트래픽 로드를 갖는다는 것이 결정된다면, 하이브리드 디바이스 (102) 는 다중 네트워크 경로들에 걸쳐 비디오 패킷들을 분할하기 위해 로드 밸런싱 동작들을 실행할 수 있다. 로드 밸런싱 동작들을 실행할 때, 하이브리드 디바이스 (102) 는 특정 애플리케이션에 의해 생성된 패킷들이 동일한 패킷 분류와 연관되고 비순차 도달, 지터 등을 최소화/회피하기 위해 동일한 선호된 네트워크 경로를 통해 송신된다는 것을 보장할 수 있다.
실시형태들은 모두가 일반적으로 여기에 "회로", "모듈" 또는 "시스템" 으로 지칭될 수도 있는 완전히 하드웨어 실시형태, 완전히 소프트웨어 실시형태 (펌웨어, 상주 소프트웨어, 마이크로-코드 등을 포함) 또는 소프트웨어와 하드웨어 양태들을 결합한 실시형태의 형태를 취할 수도 있다. 더욱이, 본 발명의 요지의 실시형태들은 매체에 수록된 컴퓨터 사용가능 프로그램 코드를 갖는 표현의 임의의 유형의 매체에 수록된 컴퓨터 프로그램 제품의 형태를 취할 수도 있다. 상기 설명된 실시형태들은 모든 예상가능한 변화가 여기에 열거되지 않기 때문에, 현재 설명되든 설명되지 않든 간에, 실시형태들에 따라 프로세스를 수행하기 위해 컴퓨터 시스템 (또는 다른 전자 디바이스(들)) 을 프로그램하는데 이용될 수도 있는, 명령들을 저장하고 있는 머신 판독가능 매체를 포함할 수도 있는, 컴퓨터 프로그램 제품, 또는 소프트웨어로서 제공될 수도 있다. 머신 판독가능 매체는 머신 (예를 들어, 컴퓨터) 에 의해 판독가능한 형태 (예를 들어, 소프트웨어, 프로세싱 애플리케이션) 로 정보를 저장 또는 송신하기 위한 임의의 메커니즘을 포함한다. 머신 판독가능 매체는 머신 판독가능 저장 매체, 또는 머신 판독가능 신호 매체일 수도 있다. 머신 판독가능 저장 매체는 예를 들어, 자기 저장 매체 (예를 들어, 플로피 디스켓); 광 저장 매체 (예를 들어, CD-ROM); 광자기 저장 매체; 판독 전용 메모리 (ROM); 랜덤 액세스 메모리 (RAM); 소거가능한 프로그램가능 메모리 (예를 들어, EPROM 및 EEPROM); 플래시 메모리; 또는 전자 명령들을 저장하는데 적합한 다른 타입들의 유형의 매체를 포함할 수도 있지만, 이들로 제한되지는 않는다. 머신 판독가능 신호 매체는 컴퓨터 판독가능 코드가 수록되어 있는 전파된 데이터 신호, 예를 들어, 전기, 광, 음향, 또는 다른 형태의 전파된 신호 (예를 들어, 반송파들, 적외선 신호들, 디지털 신호들 등) 를 포함할 수도 있다. 머신 판독가능 신호 매체 상에 수록된 프로그램 코드는 유선, 무선, 광섬유 케이블, RF 또는 다른 통신 매체를 포함하지만 이들로 제한되지는 않는 임의의 적합한 매체를 이용하여 송신될 수도 있다.
실시형태들의 동작들을 수행하기 위한 컴퓨터 프로그램 코드는 자바, 스몰토크, C++ 등과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어들과 같은 종래의 절차적 프로그래밍 언어들을 포함하는, 하나 이상의 프로그래밍 언어들의 임의의 조합으로 기록될 수도 있다. 프로그램 코드는 사용자의 컴퓨터 상에서 완전히, 사용자의 컴퓨터 상에서 부분적으로, 스탠드-얼론 소프트웨어 패키지로서, 사용자의 컴퓨터 상에서 부분적으로 및 원격 컴퓨터 상에서 부분적으로 또는 원격 컴퓨터 또는 서버 상에서 완전히 실행할 수도 있다. 후자의 시나리오에서, 원격 컴퓨터는 근거리 네트워크 (LAN), 개인 영역 네트워크 (PAN), 또는 광역 네트워크 (WAN) 를 포함하는 임의의 타입의 네트워크를 통하여 사용자의 컴퓨터에 접속될 수도 있고, 또는 그 접속은 (예를 들어, 인터넷 서비스 제공자를 이용하는 인터넷을 통하여) 외부 컴퓨터까지 이루어질 수도 있다.
도 5 는 하이브리드 통신 네트워크에 대한 어드레싱 방식을 포함하는 전자 디바이스 (500) 의 하나의 실시형태의 블록도이다. 일부 구현들에서, 전자 디바이스 (500) 는 랩톱 컴퓨터, 노트북, 모바일 폰, 파워라인 통신 디바이스, 개인 휴대 정보 단말기 (PDA), 또는 (하이브리드 통신 네트워크를 형성하는) 다중 통신 네트워크들에 걸쳐 통신하는 기능성을 포함하는 다른 전자 시스템들 중 하나일 수도 있다. 전자 디바이스 (500) 는 프로세서 유닛 (502) (가능하다면 다중 프로세서들, 다중 코어들, 다중 노드들을 포함 및/또는 멀티-스레딩을 구현 등) 을 포함한다. 전자 디바이스 (500) 는 메모리 유닛 (506) 을 포함한다. 메모리 유닛 (506) 은 시스템 메모리 (예를 들어, 캐시, SRAM, DRAM, 제로 커패시터 RAM, 트윈 트랜지스터 RAM, eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, PRAM, SONOS, PRAM 등 중 하나 이상) 또는 머신 판독가능 매체의 위에서 이미 설명된 가능한 실현들 중 임의의 하나 이상일 수도 있다. 전자 디바이스 (500) 는 또한 버스 (510) (예를 들어, PCI, ISA, PCI-Express, HyperTransport®, InfiniBand®, NuBus, AHB, AXI 등), 및 무선 네트워크 인터페이스 (예를 들어, WLAN 인터페이스, Bluetooth® 인터페이스, WiMAX 인터페이스, ZigBee® 인터페이스, 무선 USB 인터페이스 등) 및 유선 네트워크 인터페이스 (예를 들어, 파워라인 통신 인터페이스, 이더넷 인터페이스 등) 중 적어도 하나를 포함하는 네트워크 인터페이스들 (504) 을 포함한다. 일부 구현들에서, 전자 디바이스 (500) 는 복수의 네트워크 인터페이스들 - 이들 각각은 전자 디바이스 (500) 를 상이한 통신 네트워크에 커플링한다 - 을 포함할 수 있다. 예를 들어, 전자 디바이스 (500) 는 전자 디바이스 (500) 를 각각 파워라인 통신 네트워크 및 무선 근거리 네트워크와 커플링하는 파워라인 통신 인터페이스 및 WLAN 인터페이스를 포함할 수 있다.
전자 디바이스 (500) 는 또한 통신 유닛 (508) 을 포함한다. 통신 유닛 (508) 은 어드레스 선택 유닛 (512) 및 라우팅 유닛 (514) 을 포함한다. 도 1 내지 도 4 에 상기 설명한 바와 같이, 통신 유닛 (508) 은 전자 디바이스 (500) 로부터 목적지 디바이스에 패킷을 송신하기 위해 복수의 네트워크 경로들 중 하나의 네트워크 경로를 선택하는 기능성을 구현한다. 선택된 네트워크 경로에 기초하여, 통신 유닛 (508) 은 또한 패킷이 송신될 복수의 소스 네트워크 인터페이스들 중 하나 및 패킷이 목적지 디바이스에서 수신될 것으로 예상되는 복수의 목적지 네트워크 인터페이스들 중 하나를 선택할 수 있다. 통신 유닛 (508) 은 각각 선택된 소스 네트워크 인터페이스 및 선택된 목적지 네트워크 인터페이스에 대응하는 소스 MAC 어드레스 및 목적지 MAC 어드레스를 식별할 수 있다. 통신 유닛 (508) 은 식별된 소스 MAC 어드레스 및 목적지 MAC 어드레스를 패킷에 삽입할 수 있고, 선택된 네트워크 경로를 통해 목적지 디바이스에 패킷을 송신할 수 있다.
이들 기능성들 중 임의의 하나는 하드웨어에서 및/또는 프로세서 유닛 (502) 상에서 부분적으로 (또는 완전히) 구현될 수도 있다. 예를 들어, 그 기능성은 주문형 집적 회로로, 프로세서 유닛 (502) 에서 구현된 로직에서, 주변 디바이스 또는 카드 상의 보조 프로세서에서 등등으로 구현될 수도 있다. 더욱이, 실현들은 도 5 에 예시되지 않은 더 적거나 추가적인 컴포넌트들 (예를 들어, 비디오 카드들, 오디오 카드들, 추가적인 네트워크 인터페이스들, 주변 디바이스들 등) 을 포함할 수도 있다. 프로세서 유닛 (502), 메모리 유닛 (506), 및 네트워크 인터페이스들 (506) 은 버스 (510) 에 커플링된다. 버스 (510) 에 커플링되는 것으로 예시하고는 있지만, 메모리 유닛 (506) 은 프로세서 유닛 (502) 에 커플링될 수도 있다.
실시형태들은 다양한 구현들 및 활용들을 참조하여 설명되지만, 이들 실시형태들은 예시적이며 본 발명의 요지의 범위는 그들로 제한되지 않는다는 것이 이해될 것이다. 일반적으로, 여기에 설명한 바와 같은 하이브리드 통신 네트워크들에 대한 어드레싱 방식은 임의의 하드웨어 시스템 및 하드웨어 시스템들과 일치하는 설비들로 구현될 수도 있다. 많은 변화들, 변경들, 추가들, 및 향상들이 가능하다.
복수의 인스턴스들이 단일의 인스턴스로서 여기에 설명된 컴포넌트들, 동작들, 또는 구조들에 대해 제공될 수도 있다. 마지막으로, 다양한 컴포넌트들, 동작들, 및 데이터 스토어들 간의 경계들은 어느 정도 임의적이며, 특정 동작들은 특정 예시적인 구성들의 맥락에서 예시된다. 기능성의 다른 할당들이 고려되고, 본 발명의 요지의 범위 내에 있을 수도 있다. 일반적으로, 예시적인 구성들에서 개별의 컴포넌트들로서 제시된 구조들 및 기능성은 결합된 구조 또는 컴포넌트로서 구현될 수도 있다. 유사하게, 단일의 컴포넌트로서 제시된 구조들 및 기능성은 개별의 컴포넌트들로서 구현될 수도 있다. 이들 및 다른 변화들, 변경들, 추가들, 및 향상들이 본 발명의 요지의 범위 내에 있을 수도 있다.

Claims (23)

  1. 통신 네트워크의 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하도록 결정하는 단계;
    상기 제 1 네트워크 디바이스로부터 상기 제 2 네트워크 디바이스에 상기 패킷을 송신하기 위해 상기 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하는 단계;
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계;
    상기 제 1 네트워크 디바이스로부터 상기 제 2 네트워크 디바이스에 상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로에 적어도 부분적으로 기초하여 상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계; 및
    상기 제 1 네트워크 경로를 통해 상기 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 상기 제 2 네트워크 디바이스의 목적지 통신 인터페이스에, 상기 제 1 네트워크 디바이스와 연관된 상기 소스 어드레스 및 상기 제 2 네트워크 디바이스와 연관된 상기 목적지 어드레스를 적어도 포함하는 상기 패킷을 송신하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 제 1 네트워크 디바이스와 연관된 상기 소스 어드레스는 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스와 연관된 매체 액세스 제어 (MAC) 어드레스를 포함하고, 상기 제 2 네트워크 디바이스와 연관된 상기 목적지 어드레스는 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스와 연관된 MAC 어드레스를 포함하는, 방법.
  3. 제 1 항에 있어서,
    상기 패킷의 특성들에 기초하여 상기 패킷을 위해 복수의 분류 카테고리들로부터 제 1 분류 카테고리를 선택하는 단계;
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로를 상기 패킷을 위해 선택된 상기 제 1 분류 카테고리와 연관시키는 단계; 및
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로의, 상기 패킷을 위해 선택된 상기 제 1 분류 카테고리와의 연관성을 저장하는 단계를 더 포함하는, 방법.
  4. 제 3 항에 있어서,
    상기 제 1 네트워크 디바이스로부터 상기 제 2 네트워크 디바이스에 제 2 패킷을 송신하도록 결정하는 단계;
    상기 제 2 패킷이 상기 제 2 패킷의 특성들에 기초하여 상기 제 1 분류 카테고리와 연관된다는 것을 결정하는 단계; 및
    상기 제 2 패킷이 상기 제 2 패킷의 특성들에 기초하여 상기 제 1 분류 카테고리와 연관된다는 것을 결정하는 것에 응답하여, 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스로부터 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 상기 제 2 패킷을 송신하기 위해 상기 통신 네트워크와 연관된 상기 복수의 네트워크 경로들로부터 상기 제 1 네트워크 경로를 선택하는 단계를 더 포함하는, 방법.
  5. 제 3 항에 있어서,
    상기 패킷의 상기 특성들은 상위 프로토콜 계층 목적지 어드레스, 상위 프로토콜 계층 소스 어드레스, 하위 프로토콜 계층 목적지 어드레스, 하위 프로토콜 계층 소스 어드레스, 상기 패킷과 연관된 우선순위, 상기 패킷과 연관된 레이턴시, 패킷 타입, 상기 패킷이 송신될 통신 프로토콜, 상기 패킷이 송신될 통신 포트, 상기 패킷이 송신될 통신 네트워크, 및 상기 패킷을 생성한 애플리케이션 중 적어도 하나를 포함하는, 방법.
  6. 제 1 항에 있어서,
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계는 :
    상기 제 1 네트워크 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 소스 통신 인터페이스를 선택하는 단계; 및
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하는 단계를 포함하며,
    상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는 :
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 목적지 통신 인터페이스를 선택하는 단계; 및
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스를 결정하는 단계를 포함하는, 방법.
  7. 제 6 항에 있어서,
    상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하는 단계는 :
    상기 패킷으로부터, 상기 패킷을 송신하기 위해 선택되는 상기 제 1 네트워크 디바이스와 연관된 오리지널 소스 어드레스를 검출하는 단계;
    상기 오리지널 소스 어드레스가 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하는지 여부를 결정하는 단계;
    상기 오리지널 소스 어드레스가 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여,
    상기 오리지널 소스 어드레스를 상기 제 1 네트워크 디바이스의 상기소스 통신 인터페이스에 대응하는 상기 소스 어드레스로 덮어쓰는 단계; 및
    상기 패킷의 송신을 위해 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 이용하는 단계를 더 포함하는, 방법.
  8. 제 6 항에 있어서,
    상기 제 1 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스를 결정하는 단계는 :
    상기 패킷으로부터, 상기 패킷을 송신하기 위해 상기 제 1 네트워크 디바이스에 의해 선택되는 상기 제 2 네트워크 디바이스와 연관된 오리지널 목적지 어드레스를 검출하는 단계;
    상기 오리지널 목적지 어드레스가 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스에 매칭하는지 여부를 결정하는 단계;
    상기 오리지널 목적지 어드레스가 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여,
    상기 오리지널 목적지 어드레스를 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스로 덮어쓰는 단계; 및
    상기 패킷의 송신을 위해 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스를 이용하는 단계를 더 포함하는, 방법.
  9. 제 1 항에 있어서,
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 단계는 :
    상기 소스 어드레스로서 상기 제 1 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 제 1 어드레스를 선택하는 단계로서, 상기 제 1 네트워크 디바이스의 상기 복수의 인터페이스들 중 상기 제 1 인터페이스는 상기 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 단계,
    상기 소스 어드레스로서 상기 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 단계로서, 상기 제 1 네트워크 디바이스와 연관된 상기 미리결정된 어드레스는 상기 제 1 네트워크 디바이스의 상기 복수의 인터페이스들과 연관된 상기 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 단계,
    상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 소스 어드레스를 선택하는 단계, 및
    상기 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 상기 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 소스 어드레스를 선택하는 단계 중 하나를 더 포함하는, 방법.
  10. 제 1 항에 있어서,
    상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는 :
    상기 목적지 어드레스로서 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 제 1 어드레스를 선택하는 단계로서, 상기 제 2 네트워크 디바이스의 상기 복수의 인터페이스들 중 상기 제 1 인터페이스는 상기 목적지 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 단계,
    상기 목적지 어드레스로서 상기 제 2 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 단계로서, 상기 제 2 네트워크 디바이스와 연관된 상기 미리결정된 어드레스는 상기 제 2 네트워크 디바이스의 상기 복수의 인터페이스들과 연관된 상기 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 단계,
    상기 제 2 네트워크 디바이스와 연관된 상기 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 상기 제 2 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 목적지 어드레스를 선택하는 단계,
    상기 목적지 어드레스로서 상기 제 1 네트워크 경로에 대응하는 상기 제 2 네트워크 디바이스와 연관된 상기 복수의 어드레스들 중 하나의 어드레스를 선택하는 단계, 및
    상기 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 상기 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 상기 제 2 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 목적지 어드레스를 선택하는 단계 중 하나를 더 포함하는, 방법.
  11. 제 1 항에 있어서,
    상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 단계는, 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들과 연관된 상기 복수의 어드레스들을 발견하는 단계를 포함하며;
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들과 연관된 상기 복수의 어드레스들을 발견하는 단계는 :
    상기 제 2 네트워크 디바이스로부터, 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하는 단계,
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 상기 제 2 네트워크 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하는 단계, 및
    상기 제 2 네트워크 디바이스로부터, 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하는 단계 중 적어도 하나를 포함하는, 방법.
  12. 통신 디바이스로서,
    네트워크 인터페이스; 및
    상기 네트워크 인터페이스와 커플링된 어드레스 선택 및 라우팅 유닛을 포함하며,
    상기 어드레스 선택 및 라우팅 유닛은 :
    통신 네트워크의 상기 통신 디바이스로부터 제 2 통신 디바이스에 패킷을 송신하도록 결정하는 것에 응답하여, 상기 통신 디바이스로부터 상기 제 2 통신 디바이스에 상기 패킷을 송신하기 위해 상기 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하고;
    상기 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하고;
    상기 통신 디바이스로부터 상기 제 2 통신 디바이스에 상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로에 적어도 부분적으로 기초하여 상기 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하며;
    상기 제 1 네트워크 경로를 통해 상기 통신 디바이스의 소스 통신 인터페이스로부터 상기 제 2 통신 디바이스의 목적지 통신 인터페이스에, 상기 통신 디바이스와 연관된 상기 소스 어드레스 및 상기 제 2 통신 디바이스와 연관된 상기 목적지 어드레스를 적어도 포함하는 상기 패킷을 송신하도록 동작가능한, 통신 디바이스.
  13. 제 12 항에 있어서,
    상기 어드레스 선택 및 라우팅 유닛은 또한 :
    상기 패킷의 특성들에 기초하여 상기 패킷을 위해 복수의 분류 카테고리들로부터 제 1 분류 카테고리를 선택하는 것으로서, 상기 패킷의 상기 특성들은 상위 프로토콜 계층 목적지 어드레스, 상위 프로토콜 계층 소스 어드레스, 하위 프로토콜 계층 목적지 어드레스, 하위 프로토콜 계층 소스 어드레스, 상기 패킷과 연관된 우선순위, 상기 패킷과 연관된 레이턴시, 패킷 타입, 상기 패킷이 송신될 통신 프로토콜, 상기 패킷이 송신될 통신 포트, 상기 패킷이 송신될 통신 네트워크, 및 상기 패킷을 생성한 애플리케이션 중 적어도 하나를 포함하는, 상기 제 1 분류 카테고리를 선택하고;
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로를 상기 패킷을 위해 선택된 상기 제 1 분류 카테고리와 연관시키며;
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로의, 상기 패킷을 위해 선택된 상기 제 1 분류 카테고리와의 연관성을 저장하도록 동작가능한, 통신 디바이스.
  14. 제 13 항에 있어서,
    상기 어드레스 선택 및 라우팅 유닛은 또한 :
    상기 통신 디바이스로부터 상기 제 2 통신 디바이스에 제 2 패킷을 송신하도록 결정하고;
    상기 제 2 패킷이 상기 제 2 패킷의 특성들에 기초하여 상기 제 1 분류 카테고리와 연관된다는 것을 결정하며;
    상기 어드레스 선택 및 라우팅 유닛이 상기 제 2 패킷이 상기 제 2 패킷의 특성들에 기초하여 상기 제 1 분류 카테고리와 연관된다는 것을 결정하는 것에 응답하여, 상기 통신 디바이스의 상기 소스 통신 인터페이스로부터 상기 제 2 통신 디바이스의 상기 목적지 통신 인터페이스에 상기 제 2 패킷을 송신하기 위해 상기 통신 네트워크와 연관된 상기 복수의 네트워크 경로들로부터 상기 제 1 네트워크 경로를 선택하도록 동작가능한, 통신 디바이스.
  15. 제 12 항에 있어서,
    상기 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛은 :
    상기 통신 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 소스 통신 인터페이스를 선택하고;
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛을 포함하며;
    상기 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛은 :
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 목적지 통신 인터페이스를 선택하고;
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 제 2 통신 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛을 포함하는, 통신 디바이스.
  16. 제 15 항에 있어서,
    상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛은 :
    상기 패킷으로부터, 상기 패킷을 송신하기 위해 선택되는 상기 통신 디바이스와 연관된 오리지널 소스 어드레스를 검출하고;
    상기 오리지널 소스 어드레스가 상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하는지 여부를 결정하고;
    상기 어드레스 선택 및 라우팅 유닛이 상기 오리지널 소스 어드레스가 상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여,
    상기 오리지널 소스 어드레스를 상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스로 덮어쓰며;
    상기 패킷의 송신을 위해 상기 통신 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 이용하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛을 더 포함하는, 통신 디바이스.
  17. 제 12 항에 있어서,
    상기 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛은 :
    상기 소스 어드레스로서 상기 통신 디바이스의 상기 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 제 1 어드레스를 선택하는 것으로서, 상기 통신 디바이스의 상기 복수의 인터페이스들 중 상기 제 1 인터페이스는 상기 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하거나, 또는
    상기 소스 어드레스로서 상기 통신 디바이스와 연관된 미리결정된 어드레스를 선택하는 것으로서, 상기 통신 디바이스와 연관된 상기 미리결정된 어드레스는 상기 통신 디바이스의 상기 복수의 인터페이스들과 연관된 상기 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛을 더 포함하는, 통신 디바이스.
  18. 제 12 항에 있어서,
    상기 제 2 통신 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛은 :
    상기 제 2 통신 디바이스로부터, 상기 제 2 통신 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛,
    상기 제 2 통신 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 상기 제 2 통신 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하도록 동작가능한 상기 어드레스 선택 및 라우팅 유닛, 및
    상기 제 2 통신 디바이스로부터, 상기 제 2 통신 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하도록 동작가능한 상기 어드레스 및 라우팅 유닛 중 적어도 하나를 포함하는, 통신 디바이스.
  19. 명령들을 저장하고 있는 하나 이상의 머신 판독가능 저장 매체로서,
    상기 명령들은, 하나 이상의 프로세서들에 의해 실행될 때, 상기 하나 이상의 프로세서들로 하여금 :
    통신 네트워크의 제 1 네트워크 디바이스로부터 제 2 네트워크 디바이스에 패킷을 송신하도록 결정하는 것에 응답하여, 상기 제 1 네트워크 디바이스로부터 상기 제 2 네트워크 디바이스에 상기 패킷을 송신하기 위해 상기 통신 네트워크와 연관된 복수의 네트워크 경로들로부터 제 1 네트워크 경로를 선택하는 동작;
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작;
    상기 제 1 네트워크 디바이스로부터 상기 제 2 네트워크 디바이스에 상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로에 적어도 부분적으로 기초하여 상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작; 및
    상기 제 1 네트워크 경로를 통해 상기 제 1 네트워크 디바이스의 소스 통신 인터페이스로부터 상기 제 2 네트워크 디바이스의 목적지 통신 인터페이스에, 상기 제 1 네트워크 디바이스와 연관된 상기 소스 어드레스 및 상기 제 2 네트워크 디바이스와 연관된 상기 목적지 어드레스를 적어도 포함하는 상기 패킷을 송신하는 동작을 포함하는 동작들을 수행하도록 하는, 하나 이상의 머신 판독가능 저장 매체.
  20. 제 19 항에 있어서,
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작은 :
    상기 제 1 네트워크 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 소스 통신 인터페이스를 선택하는 것; 및
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하는 것을 포함하며;
    상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작은 :
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들로부터 상기 목적지 통신 인터페이스를 선택하는 것; 및
    상기 패킷을 송신하기 위해 선택된 상기 제 1 네트워크 경로와 연관된 상기 제 2 네트워크 디바이스의 상기 목적지 통신 인터페이스에 대응하는 상기 목적지 어드레스를 결정하는 것을 포함하는, 하나 이상의 머신 판독가능 저장 매체.
  21. 제 20 항에 있어서,
    상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 결정하는 동작은 :
    상기 패킷으로부터, 상기 패킷을 송신하기 위해 선택되는 상기 제 1 네트워크 디바이스와 연관된 오리지널 소스 어드레스를 검출하는 것;
    상기 오리지널 소스 어드레스가 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하는지 여부를 결정하는 것;
    상기 오리지널 소스 어드레스가 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스에 매칭하지 않는다는 것을 결정하는 것에 응답하여,
    상기 오리지널 소스 어드레스를 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스로 덮어쓰는 것; 및
    상기 패킷의 송신을 위해 상기 제 1 네트워크 디바이스의 상기 소스 통신 인터페이스에 대응하는 상기 소스 어드레스를 이용하는 것을 더 포함하는, 하나 이상의 머신 판독가능 저장 매체.
  22. 제 19 항에 있어서,
    상기 제 1 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 소스 어드레스를 결정하는 동작은 :
    상기 소스 어드레스로서 상기 제 1 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 제 1 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 제 1 어드레스를 선택하는 것으로서, 상기 제 1 네트워크 디바이스의 상기 복수의 인터페이스들 중 상기 제 1 인터페이스는 상기 소스 통신 인터페이스와는 상이한, 상기 제 1 어드레스를 선택하는 것,
    상기 소스 어드레스로서 상기 제 1 네트워크 디바이스와 연관된 미리결정된 어드레스를 선택하는 것으로서, 상기 제 1 네트워크 디바이스와 연관된 상기 미리결정된 어드레스는 상기 제 1 네트워크 디바이스의 상기 복수의 인터페이스들과 연관된 상기 복수의 어드레스들 중 임의의 어드레스와는 상이한, 상기 미리결정된 어드레스를 선택하는 것,
    상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들과 제 2 복수의 어드레스들 간의 맵핑들에 적어도 부분적으로 기초하여 상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 소스 어드레스를 선택하는 것; 및
    상기 제 1 네트워크 디바이스와 연관된 라우팅 알고리즘 및 상기 통신 네트워크의 토폴로지에 적어도 부분적으로 기초하여 상기 제 1 네트워크 디바이스와 연관된 상기 복수의 어드레스들로부터 상기 소스 어드레스를 선택하는 것 중 하나를 더 포함하는, 하나 이상의 머신 판독가능 저장 매체.
  23. 제 19 항에 있어서,
    상기 제 2 네트워크 디바이스의 복수의 통신 인터페이스들과 연관된 복수의 어드레스들로부터 목적지 어드레스를 결정하는 동작은 :
    상기 제 2 네트워크 디바이스로부터, 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 포함하는 하나 이상의 발견 공지 패킷들을 수신하는 것,
    상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스를 결정하기 위해 상기 제 2 네트워크 디바이스로부터 수신된 하나 이상의 통신 패킷들과 연관된 어드레스 필드들을 분석하는 것, 및
    상기 제 2 네트워크 디바이스로부터, 상기 제 2 네트워크 디바이스의 상기 복수의 통신 인터페이스들 중 적어도 하나의 통신 인터페이스와 연관된 상기 복수의 어드레스들 중 적어도 하나의 어드레스의 표시를 요청하는 것을 포함하는, 하나 이상의 머신 판독가능 저장 매체.
KR1020137026320A 2011-03-08 2012-03-08 하이브리드 통신 네트워크들에 대한 어드레싱 방식 KR101502263B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161450462P 2011-03-08 2011-03-08
US61/450,462 2011-03-08
US13/189,272 2011-07-22
US13/189,272 US9025603B2 (en) 2011-03-08 2011-07-22 Addressing scheme for hybrid communication networks
PCT/US2012/028254 WO2012122366A2 (en) 2011-03-08 2012-03-08 Addressing scheme for hybrid communication networks

Publications (2)

Publication Number Publication Date
KR20130136522A true KR20130136522A (ko) 2013-12-12
KR101502263B1 KR101502263B1 (ko) 2015-03-12

Family

ID=46795544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137026320A KR101502263B1 (ko) 2011-03-08 2012-03-08 하이브리드 통신 네트워크들에 대한 어드레싱 방식

Country Status (6)

Country Link
US (1) US9025603B2 (ko)
EP (1) EP2684319A2 (ko)
JP (1) JP5774729B2 (ko)
KR (1) KR101502263B1 (ko)
CN (1) CN103416042B (ko)
WO (1) WO2012122366A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8897169B2 (en) 2011-03-02 2014-11-25 Qualcomm Incorporated Discovery of conventional devices and bridges in hybrid communication networks
US9300491B2 (en) 2011-02-11 2016-03-29 Qualcomm Incorporated Frame delivery path selection in hybrid communication networks

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5818268B2 (ja) * 2010-11-02 2015-11-18 日本電気株式会社 通信システム、制御装置、経路制御方法およびプログラム
US9025603B2 (en) 2011-03-08 2015-05-05 Qualcomm Incorporated Addressing scheme for hybrid communication networks
US8614956B2 (en) 2011-03-10 2013-12-24 Qualcomm Incorporated Placement of wireless repeaters in a wireless communication network
TWI499340B (zh) * 2011-08-07 2015-09-01 Econet Suzhou Ltd 偵測媒體存取控制類型的方法
CN104365128B (zh) * 2012-04-11 2019-06-04 西门子公司 用于运行技术特定按钮配置会话的方法和设备
US9065677B2 (en) * 2012-07-25 2015-06-23 Qualcomm Incorporated Forwarding tables for hybrid communication networks
US9705747B1 (en) * 2012-12-04 2017-07-11 Qualcomm Incorporated Distributed path selection in hybrid networks
US9014056B2 (en) * 2012-12-18 2015-04-21 Qualcomm Incorporated Bridging network devices in a hybrid communication network
US9184998B2 (en) 2013-03-14 2015-11-10 Qualcomm Incorporated Distributed path update in hybrid networks
US20140269691A1 (en) * 2013-03-14 2014-09-18 Qualcomm Incorporated Distributed path selection in hybrid networks
CN104079486A (zh) 2013-03-28 2014-10-01 国际商业机器公司 一种网关及其传送数据的方法
US20140372660A1 (en) * 2013-06-14 2014-12-18 National Instruments Corporation Packet Routing Based on Packet Type in Peripheral Component Interconnect Express Bus Systems
US9774533B2 (en) * 2014-08-06 2017-09-26 Futurewei Technologies, Inc. Mechanisms to support service chain graphs in a communication network
US20160183117A1 (en) * 2014-12-17 2016-06-23 Mediatek Inc. Method and apparatus for throttling uplink data based on temperature state
US10033628B2 (en) * 2015-04-06 2018-07-24 Verizon Digital Media Services Inc. Application controlled path selection over different transit providers
US20170195218A1 (en) * 2015-12-30 2017-07-06 Qualcomm Incorporated Routing in a hybrid network
US10334334B2 (en) 2016-07-22 2019-06-25 Intel Corporation Storage sled and techniques for a data center
US20180150256A1 (en) 2016-11-29 2018-05-31 Intel Corporation Technologies for data deduplication in disaggregated architectures
US10469529B2 (en) * 2017-07-13 2019-11-05 Nicira, Inc. Address checking to protect against denial of service attack
US11089534B2 (en) 2018-12-03 2021-08-10 At&T Intellectual Property I, L.P. Optimization of access technology search in multiple equivalent home public land mobile network (EHPLMN) deployments

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6130896A (en) 1997-10-20 2000-10-10 Intel Corporation Wireless LAN segments with point coordination
US6272551B1 (en) 1998-04-08 2001-08-07 Intel Corporation Network adapter for transmitting network packets between a host device and a power line network
US6421751B1 (en) 1998-11-23 2002-07-16 Advanced Micro Devices, Inc. Detecting a no-tags-free condition in a computer system having multiple outstanding transactions
US6765927B1 (en) * 1999-10-20 2004-07-20 Alcatel RSVP proxy service for communication network
US6947736B2 (en) 2001-11-20 2005-09-20 Texas Instruments Incorporated Universal broadband home network for scalable IEEE 802.11 based wireless and wireline networking
US7082134B1 (en) 2002-01-18 2006-07-25 Juniper Networks, Inc. Redirect checking in a network device
US7113763B2 (en) 2002-06-03 2006-09-26 Nokia Corporation Bluetooth access point and remote bluetooth modules for powerline based networking
US7039712B2 (en) 2002-10-16 2006-05-02 Microsoft Corporation Network connection setup procedure for traffic admission control and implicit network bandwidth reservation
US7987489B2 (en) 2003-01-07 2011-07-26 Openpeak Inc. Legacy device bridge for residential or non-residential networks
US20040264503A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation Method and system for providing a virtual protocol interlayer
US7301949B2 (en) * 2003-07-15 2007-11-27 Telefonaktiebolaget Lm Ericsson (Publ) Arrangements for connection-oriented transport in a packet switched communications network
EP1678897A2 (en) 2003-09-23 2006-07-12 Arkados, Inc. Integrated universal network adapter
US7002943B2 (en) 2003-12-08 2006-02-21 Airtight Networks, Inc. Method and system for monitoring a selected region of an airspace associated with local area networks of computing devices
US7463588B1 (en) * 2004-02-18 2008-12-09 Woven Systems, Inc. Mechanism for enabling load balancing to be achieved in a loop-free switching path, reverse path learning network
US8130644B2 (en) * 2004-02-18 2012-03-06 Fortinet, Inc. Mechanism for enabling load balancing to be achieved in a loop-free switching path, reverse path learning network
WO2005079503A2 (en) * 2004-02-19 2005-09-01 Internap Network Services Corporation System and method for end to end route control
US20050265308A1 (en) * 2004-05-07 2005-12-01 Abdulkadev Barbir Selection techniques for logical grouping of VPN tunnels
US7269403B1 (en) 2004-06-03 2007-09-11 Miao George J Dual-mode wireless and wired power line communications
US20060015635A1 (en) 2004-06-17 2006-01-19 International Business Machines Corporation Method and apparatus for handling address resolution protocol requests for a device having multiple interfaces
US7391317B2 (en) 2004-09-08 2008-06-24 Satius, Inc. Apparatus and method for transmitting digital data over various communication media
US7539202B2 (en) * 2004-11-02 2009-05-26 Cisco Technology, Inc. Maintaining secrecy of assigned unique local addresses for IPv6 nodes within a prescribed site during access of a wide area network
WO2006060754A2 (en) * 2004-12-03 2006-06-08 B2 Technology & Consulting Services, Inc. Broadband multi-service, switching, transmission and distribution architecture for low-cost telecommunications networks
US7262695B2 (en) 2004-12-15 2007-08-28 At&T Intellectual Property, Inc. Network interface device
KR101084129B1 (ko) 2005-03-24 2011-11-17 엘지전자 주식회사 광대역 무선접속 시스템에서의 슬립모드 지원 방법
US8194656B2 (en) 2005-04-28 2012-06-05 Cisco Technology, Inc. Metro ethernet network with scaled broadcast and service instance domains
US7349325B2 (en) 2005-05-07 2008-03-25 Motorola, Inc. Broadband over low voltage power lines communications system and method
US20060274752A1 (en) * 2005-06-06 2006-12-07 Vinit Jain Method and apparatus for managing address resolution protocol data for interfaces connected to different switches
KR100651737B1 (ko) 2005-06-17 2006-12-01 한국전자통신연구원 Plc 망과 무선망을 연동하는 액세스 포인터 및 그 방법
EP1770870B1 (en) 2005-10-03 2019-04-03 Avago Technologies International Sales Pte. Limited Powerline communication device and method
US8406239B2 (en) 2005-10-03 2013-03-26 Broadcom Corporation Multi-wideband communications over multiple mediums
US8213895B2 (en) 2005-10-03 2012-07-03 Broadcom Europe Limited Multi-wideband communications over multiple mediums within a network
US20070076666A1 (en) 2005-10-03 2007-04-05 Riveiro Juan C Multi-Wideband Communications over Power Lines
CN100555949C (zh) 2006-03-22 2009-10-28 华为技术有限公司 一种对GPON系统配置Native VLAN以及处理以太网报文的方法
US8144698B2 (en) * 2006-06-09 2012-03-27 Ericsson Ab Scalable data forwarding techniques in a switched network
KR100809261B1 (ko) 2006-09-29 2008-03-03 한국전자통신연구원 QoS를 지원하는 고속 전력선 네트워크와 이더넷 간의브리지 시스템
KR100823737B1 (ko) 2006-09-29 2008-04-21 한국전자통신연구원 서로 다른 QoS를 제공하는 네트워크들을 위한 브리지장치
US7848337B1 (en) 2006-11-14 2010-12-07 Cisco Technology, Inc. Auto probing endpoints for performance and fault management
US7729278B2 (en) * 2007-02-14 2010-06-01 Tropos Networks, Inc. Wireless routing based on data packet classifications
US8300647B2 (en) 2007-05-18 2012-10-30 Nvidia Corporation Intelligent load balancing and failover of network traffic
US7792018B2 (en) * 2007-05-18 2010-09-07 Nvidia Corporation Intelligent load balancing and failover of network traffic
US7852789B2 (en) * 2007-06-20 2010-12-14 At&T Intellectual Property Ii, L.P. Methods, systems, and/or devices for providing network access
US8437272B2 (en) 2007-08-16 2013-05-07 Cisco Technology, Inc. Distinguishing between connectivity verification availability and forwarding protocol functionality in a computer network
US8509236B2 (en) * 2007-09-26 2013-08-13 Foundry Networks, Llc Techniques for selecting paths and/or trunk ports for forwarding traffic flows
KR20090062664A (ko) 2007-12-13 2009-06-17 한국전자통신연구원 선박 내부 네트워크에서의 통신 시스템 및 방법
KR101442309B1 (ko) 2007-12-18 2014-09-23 인터내셔널 비지네스 머신즈 코포레이션 다수의 아답터들을 통해서 다수의 가상 ip 어드레스를 동시에 지원하는 호스트내 페일오버
US8977737B2 (en) 2007-12-24 2015-03-10 Alcatel Lucent Detecting legacy bridges in an audio video bridging network
US8223649B2 (en) * 2008-03-25 2012-07-17 Intel Corporation Method and apparatus for sending a packet from a source node to a destination node in the same broadcast domain
JP4683345B2 (ja) 2008-04-04 2011-05-18 日本電気株式会社 ネットワーク負荷分散装置、ネットワーク負荷分散方法及びプログラム
CN101567831B (zh) * 2008-04-21 2011-11-16 成都市华为赛门铁克科技有限公司 局域网之间发送、接收信息的方法和装置以及通信的系统
US8856387B2 (en) * 2008-04-24 2014-10-07 Qualcomm Incorporated Local IP access scheme
US8619769B2 (en) * 2008-06-12 2013-12-31 Mark Henrik Sandstrom Packet-layer transparent packet-switching network
JP2010141845A (ja) 2008-12-15 2010-06-24 Fujitsu Ltd 複数のサーバを有する通信装置及び通信方法
JP2011015095A (ja) * 2009-06-30 2011-01-20 Fujitsu Ltd 通信装置、アドレス設定方法およびアドレス設定プログラム
US9832070B2 (en) * 2009-11-13 2017-11-28 Comcast Cable Communications, Llc Communication terminal with multiple virtual network interfaces
JP5699939B2 (ja) * 2010-01-08 2015-04-15 日本電気株式会社 通信システム、転送ノード、経路管理サーバおよび通信方法
US9491085B2 (en) * 2010-05-24 2016-11-08 At&T Intellectual Property I, L.P. Methods and apparatus to route control packets based on address partitioning
EP2601776B1 (en) * 2010-08-06 2015-10-28 Citrix Systems, Inc. Systems and methods for a para-virtualized driver in a multi-core virtual packet engine device
US9178944B2 (en) * 2011-01-07 2015-11-03 Jeda Networks, Inc. Methods, systems and apparatus for the control of interconnection of fibre channel over ethernet devices
US9300491B2 (en) 2011-02-11 2016-03-29 Qualcomm Incorporated Frame delivery path selection in hybrid communication networks
US8897169B2 (en) 2011-03-02 2014-11-25 Qualcomm Incorporated Discovery of conventional devices and bridges in hybrid communication networks
US9025603B2 (en) 2011-03-08 2015-05-05 Qualcomm Incorporated Addressing scheme for hybrid communication networks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9300491B2 (en) 2011-02-11 2016-03-29 Qualcomm Incorporated Frame delivery path selection in hybrid communication networks
US8897169B2 (en) 2011-03-02 2014-11-25 Qualcomm Incorporated Discovery of conventional devices and bridges in hybrid communication networks

Also Published As

Publication number Publication date
KR101502263B1 (ko) 2015-03-12
US9025603B2 (en) 2015-05-05
CN103416042B (zh) 2016-07-06
CN103416042A (zh) 2013-11-27
WO2012122366A2 (en) 2012-09-13
US20120230343A1 (en) 2012-09-13
JP5774729B2 (ja) 2015-09-09
EP2684319A2 (en) 2014-01-15
WO2012122366A3 (en) 2012-11-08
JP2014507916A (ja) 2014-03-27

Similar Documents

Publication Publication Date Title
KR101502263B1 (ko) 하이브리드 통신 네트워크들에 대한 어드레싱 방식
US10708168B1 (en) Routing methods, systems, and computer program products
US10862791B1 (en) DNS methods, systems, and computer program products
US10721164B1 (en) Routing methods, systems, and computer program products with multiple sequences of identifiers
US9294309B2 (en) Forwarding tables for hybrid communication networks
US9300491B2 (en) Frame delivery path selection in hybrid communication networks
US9014056B2 (en) Bridging network devices in a hybrid communication network
US20130346585A1 (en) Network system, and policy route setting method
US8942217B2 (en) System and method for hierarchical link aggregation
US8995443B2 (en) Address resolution mechanism for hybrid communication networks
JP2014507916A5 (ko)
KR20130132629A (ko) 하이브리드 통신 네트워크들에서의 통상의 디바이스들 및 브리지들의 디스커버리
KR20170038124A (ko) Ue들 및 고정 액세스 네트워크에서 작동하는 방법
JP2021526331A (ja) ネットワークトポロジ生成方法および装置
US10536368B2 (en) Network-aware routing in information centric networking
US10404582B1 (en) Routing methods, systems, and computer program products using an outside-scope indentifier
US10419335B1 (en) Region scope-specific outside-scope indentifier-equipped routing methods, systems, and computer program products
JP6064757B2 (ja) 通信システム及び通信方法
JP2005318011A (ja) ネットワーク経路検索装置、その検索方法、検索プログラム及びネットワーク経路検索システム

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee