CN101325497A - 在不存在自动协商标准的接口上的自动协商 - Google Patents
在不存在自动协商标准的接口上的自动协商 Download PDFInfo
- Publication number
- CN101325497A CN101325497A CNA2007101662521A CN200710166252A CN101325497A CN 101325497 A CN101325497 A CN 101325497A CN A2007101662521 A CNA2007101662521 A CN A2007101662521A CN 200710166252 A CN200710166252 A CN 200710166252A CN 101325497 A CN101325497 A CN 101325497A
- Authority
- CN
- China
- Prior art keywords
- mac controller
- mac
- communication
- behalf
- network equipment
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/266—Stopping or restarting the source, e.g. X-on or X-off
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种用于能够在不存在自动协商标准的接口上进行自动协商的方法,包括在通信链路上建立第一网络设备与第二网络设备之间的网络通信。第一网络设备包括与连接到通信链路的通信端口相关的第一媒体访问控制器(MAC)和位于第一MAC和通信端口之间的第二MAC,并且第二MAC用作第一MAC的代理MAC。第一MAC以第一通信速率将出站数据通信输出到通信端口。代理MAC截取出站数据通信。然后,代理MAC以不同于第一通信速率的第二通信速率将出站数据通信输出到通信端口。
Description
技术领域
本发明涉及计算机网络,更具体地,涉及与计算机网络的通信。
背景技术
计算机网络是可交换数据和共享资源的互连计算设备的集合。网络的开放系统发起(“OSI”)模块包括七层。例如,第二层(“L2”)网络协议可以处理更高层和物理层之间的数据和接口的组帧。以太网是L2通信协议的一个实例。网络交换机是参与数据交换的L2设备的实例。网络交换机将多个网络设备彼此连接。连接到网络交换机的一个端口的设备通常能够直接与连接到该网络交换机的另一接口的任何其它设备进行通信。
自动协商是通信中的两个设备选择这两个设备都支持的不同参数(例如,最大传输速率、流控制、全双工、或半双工)的过程。例如,如果一个设备支持1Gb/s的传输速率,但另一个设备仅支持上至100Mb/s的传输速率,则对于这两个设备可能以10Mb/s的较低速率进行通信,但以这两个设备都支持的最大传输速率(即,在该实例中为100Mb/s)进行的传输将增加设备可以共享数据的速率,以及增加网络效率。因此,这些设备将很可能自动协商并努力以100Mb/s的最大传输速率进行通信。
对于多个互联网络设备存在各种物理连接和数据传输速率。这种类型的连接都将具有由电气和电子工程师协会(“IEEE”)发布的唯一标准。例如,IEEE标准存在于以10兆位每秒(Mb/s)、100Mb/s、以及1000Mb/s的速率传输的各种连接材料(例如,纤维、铜、以及双绞线)。这些标准对于网络设备(诸如,交换机、集线器、和路由器)的开发者是重要的,以使这些设备可以自动协商彼此之间交换数据的速率。
随着标准发展和新的标准出现,媒体访问控制器(MAC)和物理层(PHY)之间的特定接口格式经常改变。在一些情况下,用于实现高传输速率(例如,1Gb/s)的工业标准将需要不同于现存的较低速传输的标准的物理接口格式。此外,在一些情况下,尽管新标准还没有被完全采用或广泛使用,但可能期望利用较高速通信的物理接口格式。如果为了遵守该标准而请求设备支持针对要求不同物理接口的较低速率的自动协商,则这可能提出挑战。
发明内容
总的来说,本说明书描述了用于执行网络设备以支持各种传输速率的自动协商的技术。例如,网络设备可以是网络交换机。在新网络标准发展时,该技术可应用于能够对网络交换机进行简单、及时的修改。
例如,在一个实例中,网络交换机可以包括一个或多个交换专用集成电路(“ASIC”),以及一个或多个增强型物理接口模块(“PHY”)。交换ASIC可包括连接到增强型PHY的一个或多个内部媒体访问控制器(media access controller,“MAC”)。即,增强型PHY可以被设置在ASIC和连接到用于在MAC和网络接口之间进行数据通信的网络交换机的不同接口之间。
如本文中所述,增强型PHY可以是独立于交换ASIC的芯片,并且集成了类似于削减MAC(pared-down MAC)的附加功能。换句话说,除了提供网络交换机的物理接口层(即,L1功能)之外,增强型PHY集成有MAC功能(通常与网络堆栈L2相关)。PHY内的这种简单MAC可以用作存在于交换ASIC中的MAC的代理。即,代理MAC将能够实现全功能MAC的一个功能子集(例如,流控制、数据传输、以及数据存储),而无须支持标准MAC的其它功能。代理MAC可以在代理MAC/PHY和标准MAC之间使用标准流控制机构来调节全功能MAC的数据传输速率,以与和代理MAC正进行通信的网络设备相对应。除了其代理MAC之外,增强型PHY实现标准PHY功能,即,设置物理接口硬件以提供到其它网络设备的连接。标准PHY接口可以支持以各种速率运行的不同材料的连接,以及与支持这些各种传输速率中的任一个的设备进行自动协商。
在一个实施例中,本发明提供了一种经由通信链路在第一网络设备和第二网络设备之间建立网络通信的方法,其中,第一网络设备包括与连接到通信链路的通信端口相关的第一媒体访问控制器(MAC)以及位于第一MAC和通信端口之间的第二MAC,其中,第二MAC用作第一MAC的代理MAC。第一MAC以第一通信速率将出站数据通信输出到通信端口。代理MAC截取出站数据通信。然后,代理MAC以不同于第一通信速率的第二通信速率将出站数据通信输出到通信端口。
在另一实施例中,本发明提供了一种包括与通信端口相关的第一媒体访问控制器(MAC)的网络设备,第一MAC被配置为以第一通信速率将出站数据通信输出到通信端口,以及第二MAC位于第一MAC和通信端口之间,第二MAC被配置为截取出站数据通信并以不同于第一通信速率的第二通信速率将出站数据通信输出到通信端口。
在另一实施例中,本发明提供了一种制造第一组网络设备的方法,网络设备中的每一个均包括与通信端口相关的第一媒体访问控制器(MAC)以及位于第一MAC和通信端口之间以用作第一MAC的代理MAC的第二MAC。第一MAC被配置为根据还未采用自动协商的第一通信标准输出数据通信。代理MAC被配置为通过代理MAC截取出站数据通信并根据已采用自动协商的第二通信标准从代理MAC中输出出站数据通信。根据该方法,在采用了用于第一通信标准的自动协商之后,制造第二组网络设备,其中,第二组网络设备中的每一个均包括第一媒体访问控制器(MAC)并排除代理MAC。
文中描述的技术可以提供某些优点。例如,交换ASIC可被设计为支持还未被完全采用或广泛执行的新兴网络接口格式。通过在交换ASIC和网络连接之间设置增强型PHY及其代理MAC,可依靠增强型PHY利用标准协议来执行与多个设备的自动协商,以及利用非标准接口与交换ASIC的MAC进行交互。这允许在采用非标准接口之前在网络设备内设计、制造、并配置交换ASIC。此外,随着网络的发展,例如,随着较高速数据传输速率或接口格式的标准化时,仅需要替换或去除包含增强型PHY的电路。
例如,最近,以10吉比特每秒(“Gb/s”)的速率操作的10吉比特以太网(“10GE”)此时已形成为公认的最快速以太网标准。IEEE已开发了10吉比特附加单元接口(“XAUI”)的标准。然而,当前标准仅提供以10Gb/s进行的操作;如果另一个设备不支持10GE,则其不提供降至较低速率的协商。IEEE当前正开发IEEE802.3AP标准,其一个目标在于创建能以标准速率中的任一种进行操作的底板的标准。底板可以用于将多个网络端口物理连接到一起,其中,这些端口可以对不同材料以各种速率进行操作。文中描述的技术的一个优点可以使网络设备能够利用10GE,而无需IEEE802.3AP标准结束。
文中描述的技术的一个实施例可以包括交换ASIC,其支持10GE;以及网络交换机,在通过使用增强型PHY结束IEEE 802.3AP之前支持不同网络速率的自动协商。一旦结束了IEEE 802.3AP,就可以简单地用标准PHY代替增强型PHY,而在该过程的所有阶段期间保留现有的ASIC并维持对10GE自动协商的支持。这可以证明替换增强型PHY可能比替换整个ASIC更便宜的优点。
下面,将结合附图和描述阐述本发明一个或多个实施例的细节。本发明的其他特征、目的和优点将通过描述、附图、以及权利要求变得显而易见。
附图说明
图1是示出了示例性计算机网络环境的框图。
图2是示出了网络交换机的示例性实施例的框图。
图3是详细示出了代理媒体访问控制器(“MAC”)实例的框图。
图4是示出了根据文中描述技术的一个实施例的用于接收和转送从一个网络设备到另一个网络设备的数据通信单元的事件顺序的流程图。
图5是进一步详细示出了用于处理帧的示例性实施例的事件顺序的流程图。
具体实施方式
图1是示出了示例性计算机网络环境2的框图。在该简化的实例中,计算机网络环境2包括连接到网络设备12A~12N(“网络设备12”)的网络交换机10。链路14A~14N(“链路14”)连接到网络交换机10和网络设备12的通信端口,并将网络交换机10通信地连接到各个网络设备12。例如,链路14A将网络设备12A连接到交换机10。尽管已经对于网络交换机进行了论述,但文中描述的技术可应用于任何网络设备。
链路14中的每一个可以是不同类型的连接器。可由各种连接材料(例如,纤维、铜、以及双绞线电缆)构成链路14,并且链路14也可以支持各种传输速率。例如,链路14可以支持10兆位每秒(Mb/s)、100Mb/s、1吉比特每秒(Gb/s,等于1000Mb/s)、或10Gb/s的传输速率。网络交换机10可以支持多条不同的链路14。例如,链路14A可以是10Gb/s的光纤(例如,10GBase-SR),链路14B可以是1Gb/s的铜缆(例如,1000Base-T),以及链路14N可以是100Mb/s的双绞线电缆(例如,100Base-T)。
通常,网络交换机10与网络设备12互联。例如,网络设备12A可能需要将数据传送给网络设备12B。在这种情况下,网络设备12A可以首先构造一个数据通信单元,优选地包括网络设备12B是预期接受器的指示;然后,网络设备12A可以将数据通信单元传送给网络交换机10。例如,数据通信单元可以是网络数据包、单元格(cell)、帧、或其它数据单元。
例如,在接收到数据通信单元时,网络交换机10可以确定网络设备12中的哪一个发送了数据通信单元。网络交换机10可以处理数据通信单元以识别数据的目的地并选择将发送数据单元的链路14。例如,作为L2交换机,网络交换机10可以监测网络2中的通信并了解网络的拓扑结构。即,网络交换机10可以了解与连接到链路14的网络设备12相关的MAC地址,并通常保存与L2网络相关的状态信息。
作为另一实例,网络交换机10可以代替网络路由器或实现L3路由功能的其它设备。为了实现路由功能,网络交换机10保持网络拓扑结构和发送信息,以沿着网络中的路径发送数据包。在任何情况下,文中描述的技术都可以集成到要求网络链路的物理接口的任何类型的网络设备中。
网络交换机10集成有物理接口(“PHY”)(图2),其向链路14的通信介质提供物理接口。在一些情况下,网络交换机10可能需要与一个或多个网络设备12(例如,网络设备12A)执行自动协商,以有效地与网络设备12进行通信。在这种情况下,PHY也将执行自动协商,这是因为自动协商通常被看作物理层、或第一层(“L1”)功能。
作为实例,网络交换机10可以支持多种数据传输速率,例如,10Gb/s、1Gb/s、100Mb/s、和10Mb/s。然而,网络设备12A仅可以支持上至100Mb/s的传输速率。网络交换机10和网络设备12A协商它们能够传输数据(在这种情况下为100Mb/s)的速率。自动协商可以进一步建立其它通信特征,例如,通信设备是否支持半双工或全双工通信。
文中描述的技术可以提供特别的优点。例如,网络交换机10的交换ASIC可以被设计为支持还未被完全采用或广泛实施的新兴网络接口。在网络交换机10内,增强型PHY和代理MAC位于交换ASIC和连接到链路14的物理端口之间。可以依靠增强型PHY使用标准协议来执行与网络设备12中的任一个的自动协商,同时利用非标准的新兴接口在网络交换机10的交换ASIC内实现与MAC的交互。这允许在采用非标准接口之前设计、制造、并配置网络交换机10的交换ASIC。此外,随着网络2的发展,例如,随着通过网络设备12的较高速数据传输速率或接口格式的标准化,仅需要替换或去除包含增强型PHY的网络交换机10内的电路。
作为一个实例,网络交换机10的交换ASIC可被设计为集成有10Gb/s的附加单元接口(XAUI),其可能不具有用于以低于10Gb/s数据传输速率进行自动协商的标准。此时,IEEE当前以IEEE802.3AP的形式开发了一个标准以允许在XAUI上进行自动协商,但该标准尚未完成。文中描述的技术可以允许网络设备(例如,网络交换机10)的开发集成到利用不存在执行自动协商的标准的接口(例如,XAUI)的芯片组,并提供设备简单的后续修改以适应网络和网络标准的发展。作为一个实例,即使代替了IEEE 802.3AP标准,但文中的技术也可以允许网络交换机10集成利用XAUI接口的交换ASIC,并且还与网络设备12执行自动协商。一旦采用了包括自动协商的新标准(例如,一旦采用了IEEE 802.3AP标准),就可以制造包括原始MAC而不是代理MAC的一组新的网络设备,这是因为不再需要代理MAC。例如,参考图2,可以仅用标准PHY,可能是类似的PHY 22替换物理接口模块18A~18N(“增强型PHY18”),。
图2是示出了网络交换机10的示例性实施例的框图。在示例性实施例中,尽管只可以利用少至一个的交换ASIC,但示出了包括多个交换专用集成电路16A~16N(“交换ASIC 16”)的网络交换机10。尽管图2中未示出,但交换ASIC 16可以被互连以形成用于发送数据单元(例如,网络帧)的交换结构。
示出了包括与不同物理端口相关的至少一个媒体访问控制器(“MAC”)的交换ASIC 16中的每一个。例如,ASIC 16A包括与物理端口相关的内部MAC 28A,该物理端口提供到链路14A的连通性。MAC 28中的每一个提供用于其各自端口的第2层功能,并利用物理接口29,其可以是可能还未被用作工业标准的所谓的下一代物理接口29。例如,在一个实施例中,MAC 28中的每一个可以利用10Gb/s附加单元接口(“XAUI”)。如下所述,该示例性实施例可允许网络交换机10配置XAUI接口并且即使在还未采用标准的情况下仍然支持自动协商。
网络交换机10还包括一个或多个增强型物理接口模块18A~18N(“增强型PHY18”),其可以作为交换ASIC 16外部的一个或多个芯片来实现。在该实例中,尽管该布置仅出于实例的目的,但增强型PHY 18中的每一个与相应的交换ASIC 16相对应。增强型PHY 18中的每一个包括用于实现代理MAC的逻辑电路和用于实现与标准PHY相关的功能的逻辑电路。例如,增强型PHY 18A包括代理MAC 20A和PHY 22A。通过内部连接器30A~30N(“连接器30”)连接相应的交换ASIC16和增强型PHY18。在一个实施例中,连接器30是每个XAUI。
标准PHY 22通过各自链路14提供网络交换机10和各自网络设备12之间的物理接口。PHY 22中的每一个可以支持各种连接器材料,例如,纤维、铜、双绞线电缆。此外,PHY 22中的每一个可以根据这些材料支持各种传输速率,例如,10Mb/s、100Mb/s、1Gb/s、以及10Gb/s的传输速率。PHY 22中的每一个也与相应的网络设备进行通信,例如,PHY 22A可以与网络设备12A进行通信,以执行自动协商来选择PHY 22A和网络设备12A可以交换数据的最快速率,以及是否以半双工或全双工模式交换数据。
代理MAC 20A~20N(“代理MAC 20”)实现特定L2功能,因此可被看作用于各自MAC 28的代理。即,代理MAC 20A可以支持MAC 28A的功能子集,例如,流控制、数据传输、以及数据存储。此外,代理MAC 20A可用作MAC 28A的代理,并与MAC28A和连接到链路14A的网络设备进行通信。代理MAC 20A也可以“骗取”MAC 28A的MAC地址;即,代理MAC 20A可以接收打算提供给MAC 28A的流量,并且代理MAC 20A可以发送流量好像MAC 28A已经发送那个流量一样。代理MAC 20A和PHY 22A可以支持多种传输速率,例如,10Mb/s、100Mb/s、1Gb/s、以及10Gb/s的速率。代理MAC 20A无需支持标准MAC的所有其它功能,例如,FCS校验和的估计以及逻辑链路控制(“LLC”)层的接口连接。下面,参考图3更详细地描述示例性代理MAC 20A。
MAC 28和接口31中的每一个都可以被构造为能够与以相同数据传输速率操作的设备通信,而无需支持对其它数据传输速率的自动协商。例如,MAC 28A可以利用XAUI接口,期望MAC 28A与也使用XAUI接口的网络设备交互。因此,MAC 28A的优点在于,例如,MAC 28A与除代理MAC 20A之外的个别网络设备进行通信。即,MAC 28A并不必了解代理MAC 20A也无需以与其它网络设备通信相比的修改方式进行通信。
代理MAC 20A可以利用流控制消息和内部缓存器将MAC28A的速率降低到较低的数据传输速率。假设这些流控制消息来自个别网络设备,则MAC 28A可以调整数据传输速率从而响应于流控制消息。以这种方式,可以设计并配置交换ASIC 16以利用尚未存在的自动协商标准的网络接口(例如,XAUI),然而网络交换机10仍可以保持对其它设备自动协商的支持。因此,在等待与接口31相关的标准结束、采用以及最后广泛使用时,不需要延迟交换ASIC 16的设计和配置。
图3是更详细示出了对于代理MAC 20A的示例性实施例的框图。在该实例中,代理MAC 20A包括入站队列24A、出站队列26A、MAC地址模块34A、流控制模块36A、传输速率模块38A、以及数据传输模块40A。
通常,由于某些原因,网络交换机10的MAC 28A将不能直接与网络设备12A自动协商,例如,MAC 28A可以支持不存在用于执行自动协商的标准的数据传输速率或接口。通过使用增强型PHY18A,能够以本网络标准执行自动协商的网络交换机10可以与网络设备12A自动协商。一旦网络标准发展符合交换ASIC 16的输出接口格式,增强型PHY 18A就可以代替标准PHY。
尽管MAC 28A可能仅支持不存在自动协商标准的一种网络传输速率或接口,但增强型PHY 18A允许与网络设备12A进行自动协商。作为一个实例,代理MAC 20A可以支持存在自动协商协议的多种工业标准的网络传输速率和/或接口。在一个实施例中,代理MAC 20A可以支持10Gb/s、1Gb/s、100Mb/s、以及10Mb/s的传输速率,而MAC 28A仅可以10Gb/s速率运行支持XAUI接口。此外,网络设备12A仅可以支持100Mb/s。不存在用于自动协商将XAUI接口单元的速率下降至100Mb/s的网络标准。因此,代理MAC 20A可以用作相同的物理连接介质的MAC 28A的代理。代理MAC 20A可以实现全功能MAC的功能子集(例如,流控制),以允许网络交换机10和网络设备12A之间的通信。即,除了处理来自MAC 28A和网络设备12A的流控制消息之外,代理MAC 20A可以产生流控制消息以调节MAC 28A的传输速率。尽管与交换ASIC 16相比可以降低接口逻辑电路的复杂性,然而,PHY 22A将能够以各种传输速率(例如,包括10Gb/s、1Gb/s、100Mb/s、以及10Mb/s)执行自动协商。
代理MAC 20A结合传输速率模块38A以执行与网络设备12A的自动协商。如果还没有确定传输速率,则PHY 22A可能需要执行与网络设备12A的自动协商。为了保证遵循所确定的传输速率,传输速率模块38A可以向流控制模块36A发送信号,以根据PHY22A和网络设备12A之间协商的传输速率将流控制消息发送到MAC 28A。具体地说,流控制模块36A可能以用于与网络设备12A通信的协商速率相关的高速率形成内部流控制消息,以向MAC 28A发送信号来开始和停止来自MAC 28A的数据突发的传输。在一个实施例中,流控制模块36A形成包括流控制帧的流控制消息。流控制模块36A可将流控制消息发送到入站队列24A,消息将被存储在这里直到消息可以连同从网络设备12接收的入站包37一起发送到MAC 28A。一旦接收到流控制消息(例如,停止消息或开始消息),MAC 28A就根据流控制消息通过中止数据的输出或再启动传输来进行响应。
在一些实施例中,MAC地址模块34A通过使用相同的MAC地址或通过用其自身的MAC地址代替从MAC 28A接收的所有数据传输来“骗取”MAC 28A的MAC地址。通常,MAC地址唯一确定网络上设备的物理接口。因为代理MAC 20A用作MAC 28A的代理,所以代理MAC 20A首先从网络链路14接收所有入站数据,并将出站数据和流控制消息发送到网络设备12A,作为直接来自MAC 28A的消息。MAC地址模块34A实现MAC处理功能,例如,检索MAC 28A的MAC地址或者代替其自身的MAC地址。在实现代理MAC 28A的功能中,无论何时必须使用MAC 28A的MAC地址。MAC地址模块34A将使用MAC 28A的MAC地址或代替其自身MAC地址以隐藏MAC 28A的MAC地址。
数据传输模块40A通常负责与物理层接口连接,即PHY 22A,以发送和接收数据。数据传输模块40A也管理队列24A、26A。队列24A、26A用作MAC 28A和代理MAC 20A之间的缓存器,用于从网络接收的入站包37和发送到网络的出站包39。一旦从网络设备12A中的一个接收了数据通信单元,数据传输模块40A就可以将数据通信单元存储在入站队列24A中。此外,数据传输模块40A可以将由流控制模块36A产生的内部流控制消息存储到入站队列24A中,并与MAC 28A通信。当数据传输模块40A确定到MAC28A的数据传输是可能的时,数据传输模块40A将来自入站队列24A的数据发送给MAC 28A。数据传输模块40A将从打算供网络设备12A使用的MAC 28A接收的出站数据通信单元存储到出站队列26A中。当网络设备12A准备接收数据通信单元时,数据通信模块40A将来自出站队列26A的数据通信单元发送到网络设备12A。此外,数据传输模块40A可以将由流控制模块36A产生的外部流控制消息存储在出站队列26A中用于传送到网络设备12A。
将代理MAC 20A连接到MAC 28A的连接器30A可为全双工通信提供支持。即,连接器30A可以允许数据在两个方向上同时流动。为了清楚,图3将连接器30A表示为定向的链路31A、32A。在示例性实施例中,代理MAC 20A利用链路31A将数据发送给MAC 28A,并且代理MAC 20A利用链路32A接收从MAC 28A发送的数据。在出站队列26A中存储从MAC 28A发送到代理MAC20A的数据。此外,在入站队列24A中存储将从代理MAC 20A发送到MAC 28A的数据。例如,流控制模块36A可以基于出站队列26A的当前存储等级形成MAC 28A的内部流控制帧,并且数据传输模块40A可以将流控制帧存储到将发送给MAC 28A的入站队列24A中。类似地,一旦从网络设备12A中接收了数据通信单元,数据传输模块40A就可以将数据通信单元存储到入站队列24A中。
当MAC 28A将数据发送给代理MAC 20A时,在出站队列26A中存储数据,直到数据传输模块40A准备将数据发送给网络设备12A。另外,在一些情况下,MAC 28A可以输出流控制消息,代理MAC 20A将其截取并用来控制从入站队列24A到交换ASIC 16A的传输。
可以根据MAC 28A和代理MAC 20A之间的内部环回延迟(round-trip delay)来确定队列24A、26A的最小量。即,可以将队列24A、26A的最小量确定为MAC 28A和代理MAC 20A之间通信延迟的函数。在一个实施例中,入站队列24A足够长以保存从网络设备12A接收的数据通信单元以及流控制模块36A中的流控制消息。出站队列26A足够长以保存从MAC 28A接收的一个数据通信单元。在最糟糕的情况下,代理MAC 20A可能已接收但还未处理来自打算供网络模块12A使用的MAC 28A的数据通信单元,数据传输模块40A可能已接收但还未处理来自打算供MAC 28A使用的网络设备12A的入站数据通信单元,并且在此时,流控制模块36A准备用于MAC 28A的流控制消息(例如,停止传输),所有这些都只经历了非常短的时间,例如,在队列24A或26A可被排空之前。在这种情况下,使用有限的缓冲资源,使入站队列24A的长度足以满足保存未处理的入站数据通信以及用于MAC 28A的新近生成的流控制消息,并提供高效的代理MAC。
在一个实施例中,数据通信单元可以是1,000个字节的长帧,因此出站队列26A可以是1,000个字节长且入站队列24A可以是2,000个字节长。其它实施例可能延伸到队列24A、26A中的一个或两个。此外,其它实施例可以使用数据通信单元的其它形式,来代替帧。其它实施例也可以将一个帧调整为不同的比特长度。仍然在其它实施例中,队列24A、26A可以是单独的数据结构,其大小可以是环回延迟的函数。例如,诸如二进制树的树结构可以保存上述数据通信单元,其中,树结构的一个分枝保存从MAC 28A接收的数据,而另一个分枝保存将被发送到MAC 28A的数据。本领域技术人员应当理解,其它的数据结构也可以代替队列24A、26A。
图4是示出了根据文中描述的技术的一个实施例的用于接收和发送从一个网络设备到另一个网络设备的数据通信单元的事件顺序的流程图。在示例性实施例中,相对于从网络设备12A接收数据,然后将数据发送给网络设备12B的网络交换机10描述事件顺序。在示例性实施例中,尽管在其他实施例中数据通信单元可以采取诸如单元格或数据包的不同形式,但网络实体交换数据通信单元在这里被称为“帧”。本领域技术人员应当理解,在不背离本文描述的潜在技术的原理的情况下,可以更改示例性实施例以适应网络实体、数据通信单元、以及特定事件排序的改变。
在示例性计算机网络环境2中,网络设备12A和12B没有直接连接,因此它们必须通过网络交换机10进行通信。在此时之前的某些点上,网络设备12A和网络交换机10自动协商经由链路14A的通信速率(50)。通常,自动协商是一个过程,其中,由两个设备确定每个设备可以交换帧的最大速率,以及确定这些设备是否以半双工或全双工模式操作。PHY 22A将代表网络交换机10与网络设备12A执行自动协商。
一旦传输速率模块38A或代理MAC 20A与网络设备12A已经协商了数据传输速率和传输模式,网络设备12A就准备发送数据。随后,网络设备12A可以将帧发送给网络交换机10,PHY 22A可以经由与链路14A互联的介质和物理接口来接收该帧(52)。
数据传输模块40A可以将从网络设备12A接收的入站帧设置在入站队列24A。当MAC 28A的数据传输模块40A准备接收数据时,即,根据来自MAC 28A的任何流控制消息,数据传输模块40A可将帧发送给MAC 28A用于处理。MAC 28A可以由帧组成处理的数据通信单元,其被传送到网络的较高层(54)。参考图5更详细地描述该处理和数据传送。
一旦结束处理,帧就可以被切换到不同MAC用于发送。例如,MAC 28B可以检索处理的数据,这是因为根据实例MAC 28B与原始帧的目的地(即,网络设备12B)相关。MAC 28B将很可能在先前某一时间已与网络设备12B执行了自动协商以选择在链路14B上的通信传输速率(56)。如果MAC 28B以高于由网络设备12B支持的数据传输速率进行操作,则MAC 28B将尝试以允许代理MAC20B将数据发送给网络设备12B的速率更高的速率将数据发送给代理MAC 20B。因此,代理MAC 20B将以比MAC 28B的传输速率更高的速率接收数据、缓冲出站流量、并利用流控制开始和停止来自MAC 28B的传输。
例如,在一些实例中,可以要求流控制模块36B生成内部流控制消息,该内部流控制消息要求MAC 28B暂停传输直到可以处理MAC 20B的所有待决的出站数据(58)。流控制模块36B可以构造流控制消息以便暂停流量,并一旦处理了所有出站数据,第二流控制消息就可能被用于指示MAC 28B以高于由网络设备12B支持的速率重启动传输。数据传输模块40B可以将内部流控制消息存储在入站队列24B中,其中,使流控制消息入队以将其发送给MAC 28B。数据传输模块40B将入站队列24B的内容发送给MAC 28B,该内容可以包括来自流控制模块36B的流控制消息。在等待发送流控制消息的同时,网络设备10可以接收来自网络设备12B的帧。数据传输模块40B可以将这些附加帧存储到入站队列24B中。数据传输模块40B可将从MAC 28B发出的数据存储到输入缓存器26B中。只要网络设备12B准备接收数据,数据传输模块40B就可以将输入缓存器26B的内容(具体地说,从MAC 28B接收的帧)传送给PHY22B,以使PHY 22B可将帧发送给网络设备12B(60)。
图5是更详细地示出了用于处理帧的示例性实施例的事件顺序的流程图。首先,入站帧可以通过增强型PHY 18A从链路14A到达MAC 28A(62)。MAC 28A可以对帧执行其标准处理,例如,解释该帧并将该帧传送到逻辑链路控制(“LLC”)层(64)作为交换ASIC 16A中用于更高层网络处理的已处理数据通信单元。交换ASIC 16A使已处理的数据通信单元依次传送到用于甚至更高层网络处理的网络交换机10的核心(66)。更高层上的这种处理可以包括通过使用查阅表确定数据通信单元的目的地以识别IP地址和/或MAC地址(68)。只要网络交换机10确定了数据通信单元的目的地,网络交换机10就可以将数据通信单元发送到与目的地相关的交换ASIC(70)。在实例中,这是交换ASIC 18B,这是因为目的地是网络设备12B。交换ASIC 18B可以对数据通信单元执行处理,最后将出站数据通信单元传送到MAC 28B(72)。MAC 28B可以依次由数据通信单元组成出站帧(74)并将该帧发送给代理MAC 20B,如上所述,其可以处理并将帧发送到网络链路14B之外。
已经描述了本发明的各个实施例。这些和其它实施例在下述权利要求的范围内。
Claims (18)
1.一种方法,包括:
在通信链路上建立第一网络设备和第二网络设备之间的网络通信,其中,所述第一网络设备包括第一媒体访问控制器,与连接到所述通信链路的通信端口相关;以及第二媒体访问控制器,位于所述第一媒体访问控制器和所述通信端口之间,其中,所述第二媒体访问控制器用作所述第一媒体访问控制器的代理媒体访问控制器;
以第一通信速率将来自所述第一媒体访问控制器的出站数据通信输出到所述通信端口;
通过所述代理媒体访问控制器截取所述出站数据通信;以及
以不同于所述第一通信速率的第二通信速率将来自所述代理媒体访问控制器的所述出站数据通信输出到所述通信端口。
2.根据权利要求1所述的方法,还包括:
通过所述代理媒体访问控制器生成内部流控制消息;以及
将所述内部流控制消息从所述代理媒体访问控制器发送到所述第一媒体访问控制器。
3.根据权利要求2所述的方法,还包括:
通过所述第一媒体访问控制器接收所述流控制消息,以及
根据所述流控制消息开始和停止从所述第一媒体访问控制器出站的数据通信的传输。
4.根据权利要求1所述的方法,还包括自动协商所述第二通信速率,所述第一网络设备以所述第二通信速率将所述出站数据通信发送给所述第二网络设备。
5.根据权利要求4所述的方法,其中,自动协商所述第二通信速率包括与代表所述第一媒体访问控制器的所述代理媒体访问控制器自动协商所述第二通信速率。
6.根据权利要求1所述的方法,还包括:
以所述第二通信速率通过所述代理媒体访问控制器从所述第二网络设备接收入站数据通信;
通过所述代理媒体访问控制器,将所述入站数据通信内的目的媒体访问控制器地址替换为与所述第一媒体访问控制器相关的媒体访问控制器地址;以及
以所述第一通信速率将所述入站数据通信从所述代理媒体访问控制器发送到所述第一媒体访问控制器。
7.根据权利要求1所述的方法,还包括:
通过所述代理媒体访问控制器,将所述出站数据通信内的源媒体访问控制器地址替换为与所述第一媒体访问控制器相关的媒体访问控制器地址;以及
以所述第一通信速率将所述出站数据通信从所述代理媒体访问控制器发送到所述第一媒体访问控制器。
8.根据权利要求1所述的方法,其中,所述第一网络设备是网络交换机,在所述网络交换机的交换专用集成电路内实现所述第一媒体访问控制器,以及在所述交换专用集成电路外部的接口硬件内实现所述代理媒体访问控制器。
9.根据权利要求1所述的方法,还包括:
根据尚未采用自动协商的通信标准从所述第一媒体访问控制器中输出所述出站数据通信;以及
根据已采用自动协商的通信标准从所述代理媒体访问控制器中输出所述出站数据通信。
10.一种网络设备,包括:
第一媒体访问控制器,与通信端口相关,所述第一媒体访问控制器被配置为以第一通信速率将出站数据通信输出到所述通信端口;以及
第二媒体访问控制器,位于所述第一媒体访问控制器和所述通信端口之间,所述第二媒体访问控制器被配置为截取所述出站数据通信并以不同于所述第一通信速率的第二通信速率将所述出站数据通信输出到所述通信端口。
11.根据权利要求10所述的网络设备,其中,所述第二媒体访问控制器被配置为用作所述媒体访问控制器的代理媒体访问控制器。
12.根据权利要求10所述的网络设备,其中,所述第二媒体访问控制器包括流控制模块,其生成内部流控制消息并将所述内部流控制消息从所述第二媒体访问控制器发送到所述第一媒体访问控制器,以开始和停止从所述第一媒体访问控制器传输出站数据通信。
13.根据权利要求10所述的网络设备,其中,所述第二媒体访问控制器包括传输速率模块,与第二网络设备自动协商所述第二媒体访问控制器发送所述出站数据通信的所述第二通信速率。
14.根据权利要求10所述的网络设备,还包括将所述第一媒体访问控制器连接到所述第二媒体访问控制器的10吉比特附加单元接口(“XAUI”)。
15.根据权利要求10所述的网络设备,还包括:
交换专用集成电路;以及
将所述专用集成电路连接到所述通信端口的所述交换专用集成电路外部的接口硬件,
其中,在所述交换专用集成电路中实现所述第一媒体访问控制器,以及
其中,在所述交换专用集成电路外部的接口硬件中实现所述代理媒体访问控制器。
16.根据权利要求10所述的网络设备,其中,所述网络设备是网络交换机。
17.根据权利要求10所述的网络设备,
其中,所述第一媒体访问控制器包括被配置为根据尚未采用自动协商的通信标准输出所述出站数据通信的接口,以及
其中,所述第二媒体访问控制器包括被配置为根据已采用自动协商的通信标准输出所述出站数据通信的接口。
18.一种方法,包括:
制造第一组网络设备,所述网络设备中的每一个均包括第一媒体访问控制器,与通信端口相关;和第二媒体访问控制器,位于所述第一媒体访问控制器和所述通信端口之间,以用作所述媒体访问控制器的代理媒体访问控制器,其中,所述第一媒体访问控制器被配置为根据尚未采用自动协商的第一通信标准输出数据通信,以及其中,所述代理媒体访问控制器被配置为根据已采用自动协商的第二通信标准通过所述代理媒体访问控制器截取所述出站数据通信并从所述代理媒体访问控制器中输出所述出站数据通信;以及
在采用了第一通信标准的自动协商之后,制造第二组网络设备,其中,所述第二组网络设备中的每一个均包括所述第一媒体访问控制器并排除所述代理媒体访问控制器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/762,478 US7830875B2 (en) | 2007-06-13 | 2007-06-13 | Autonegotiation over an interface for which no autonegotiation standard exists |
US11/762,478 | 2007-06-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101325497A true CN101325497A (zh) | 2008-12-17 |
CN101325497B CN101325497B (zh) | 2011-11-30 |
Family
ID=39092986
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101662521A Active CN101325497B (zh) | 2007-06-13 | 2007-11-07 | 在不存在自动协商标准的接口上的自动协商 |
CNU2007201951902U Expired - Lifetime CN201100949Y (zh) | 2007-06-13 | 2007-11-07 | 网络设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNU2007201951902U Expired - Lifetime CN201100949Y (zh) | 2007-06-13 | 2007-11-07 | 网络设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7830875B2 (zh) |
EP (1) | EP2003823B1 (zh) |
CN (2) | CN101325497B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106487764A (zh) * | 2015-08-31 | 2017-03-08 | 富士通株式会社 | 用于网络评估的数据发送方法、装置和系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8218459B1 (en) * | 2007-12-20 | 2012-07-10 | Genbrand US LLC | Topology hiding of a network for an administrative interface between networks |
US7701880B2 (en) * | 2008-01-10 | 2010-04-20 | International Business Machines Corporation | Fibre channel link initialization |
WO2009150492A1 (en) * | 2008-06-11 | 2009-12-17 | Freescale Semiconductor, Inc. | Method and apparatus for enabling communication between a first device and at least one further device |
SG194129A1 (en) * | 2011-05-17 | 2013-11-29 | Ericsson Telefon Ab L M | Protection for fibre optic access networks |
US8958301B2 (en) * | 2011-10-28 | 2015-02-17 | Iii Holdings 2, Llc | System and method for dynamically power and performance optimized server interconnects |
US9130695B1 (en) * | 2012-03-06 | 2015-09-08 | Aquantia Corp. | Adaptive rate control of 10GBASE-T data transport system |
KR101622206B1 (ko) | 2012-05-02 | 2016-05-18 | 인텔 코포레이션 | 다수의 미디어 액세스 제어기들을 이용하는 데이터의 패킷 프로세싱 |
CN103369032B (zh) * | 2013-05-23 | 2016-09-14 | 浙江浙大中控信息技术有限公司 | 一种基于Wi-Fi的P2P无线通信方法 |
CN108073445B (zh) * | 2016-11-18 | 2021-10-22 | 腾讯科技(深圳)有限公司 | 基于分布式流计算的背压处理方法和系统 |
US10673701B2 (en) * | 2018-04-24 | 2020-06-02 | Dell Products L.P. | PHY ability auto-negotiation system |
US11115151B1 (en) | 2019-03-22 | 2021-09-07 | Marvell Asia Pte, Ltd. | Method and apparatus for fast retraining of ethernet transceivers based on trickling error |
US11228465B1 (en) | 2019-03-22 | 2022-01-18 | Marvell Asia Pte, Ltd. | Rapid training method for high-speed ethernet |
US10771100B1 (en) | 2019-03-22 | 2020-09-08 | Marvell Asia Pte., Ltd. | Method and apparatus for efficient fast retraining of ethernet transceivers |
CN113507349B (zh) * | 2021-09-10 | 2021-12-10 | 苏州裕太微电子有限公司 | 一种光电匹配方法及系统 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748634A (en) * | 1995-09-14 | 1998-05-05 | Level One Communications, Inc. | Method and apparatus for implementing a two-port ethernet bridge using a semaphoring technique |
DE69638175D1 (de) * | 1996-02-09 | 2010-06-10 | Level One Comm Inc | Zwischenverstärker mit automatischer geschwindigkeitsumschaltung |
US5909444A (en) * | 1996-12-16 | 1999-06-01 | Motorola, Inc. | System, device, and method for aggregating users in a shared-medium network |
US6108345A (en) * | 1997-05-30 | 2000-08-22 | 3Com Corporation | Configurable Wan/Lan bridge |
US6501734B1 (en) * | 1999-05-24 | 2002-12-31 | Advanced Micro Devices, Inc. | Apparatus and method in a network switch for dynamically assigning memory interface slots between gigabit port and expansion port |
ATE331369T1 (de) | 2000-03-06 | 2006-07-15 | Ibm | Schaltvorrichtung und verfahren |
US6934261B1 (en) * | 2000-11-17 | 2005-08-23 | Advanced Micro Devices, Inc. | Method to select dynamically between MACs of network device depending on network topology |
US6912199B1 (en) * | 2000-12-28 | 2005-06-28 | Advanced Micro Devices, Inc. | Method to select transmission rate for network device |
US20030105830A1 (en) * | 2001-12-03 | 2003-06-05 | Duc Pham | Scalable network media access controller and methods |
US7260654B1 (en) * | 2002-01-14 | 2007-08-21 | Sprint Communications Company L.P. | System and method for communicating using multiple access technologies and multiple standards |
CN100499535C (zh) * | 2003-09-02 | 2009-06-10 | 华为技术有限公司 | 在介质访问控制中支持以太网口自协商的方法及装置 |
US20070079366A1 (en) * | 2005-10-03 | 2007-04-05 | Microsoft Corporation | Stateless bi-directional proxy |
US8441957B2 (en) * | 2005-10-17 | 2013-05-14 | Broadcom Corporation | Apparatus and method of remote PHY auto-negotiation |
-
2007
- 2007-06-13 US US11/762,478 patent/US7830875B2/en active Active
- 2007-10-11 EP EP07254043A patent/EP2003823B1/en active Active
- 2007-11-07 CN CN2007101662521A patent/CN101325497B/zh active Active
- 2007-11-07 CN CNU2007201951902U patent/CN201100949Y/zh not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106487764A (zh) * | 2015-08-31 | 2017-03-08 | 富士通株式会社 | 用于网络评估的数据发送方法、装置和系统 |
CN106487764B (zh) * | 2015-08-31 | 2019-09-03 | 富士通株式会社 | 用于网络评估的数据发送方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
US20080310432A1 (en) | 2008-12-18 |
EP2003823B1 (en) | 2012-02-01 |
US7830875B2 (en) | 2010-11-09 |
CN101325497B (zh) | 2011-11-30 |
EP2003823A1 (en) | 2008-12-17 |
CN201100949Y (zh) | 2008-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101325497B (zh) | 在不存在自动协商标准的接口上的自动协商 | |
EP2621136B1 (en) | Link aggregation in software-defined networks | |
US8982703B2 (en) | Routing support for lossless data traffic | |
US9215175B2 (en) | Computer system including controller and plurality of switches and communication method in computer system | |
US8472312B1 (en) | Stacked network switch using resilient packet ring communication protocol | |
US9413614B1 (en) | Systems and methods for determining network topologies | |
US8509616B2 (en) | Devices, systems and methods for run-time reassignment of a PHY to MAC devices interconnect | |
US20140211808A1 (en) | Switch with dual-function management port | |
CN102771093B (zh) | 通信控制系统、切换节点、通信控制方法 | |
CN100596118C (zh) | 一种交换机堆叠系统中报文处理的方法及交换机设备 | |
WO2014127629A1 (zh) | 报文转发系统、方法及装置 | |
EP2680536A1 (en) | Methods and apparatus for providing services in a distributed switch | |
CN111800336A (zh) | 基于多通道网络链路聚合的路由传输实现方法 | |
JP5065269B2 (ja) | ローカル・エリア・ネットワーク管理 | |
US7822026B2 (en) | Transit devices and system including a slow protocol filter and methods of transmitting information within a transit device or system using a slow protocol filter | |
Cisco | Configuring Ethernet Fast Ethernet & Gigabit Ethernet Switching | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
Cisco | Configuring STUN and BSTUN | |
KR101442567B1 (ko) | 링 네트워크 토폴로지에서 프레임기반 라우팅을 이용한 프레임 무손실 통신 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: JUNIPER NETWORKS INC. Free format text: FORMER NAME: NETSCREEN TECHNOLOGIES INC. |
|
CP01 | Change in the name or title of a patent holder |
Address after: California, USA Patentee after: Juniper Networks, Inc. Address before: California, USA Patentee before: Jungle network |