CN1625160A - 可控制数据包传送的交换器及相关方法 - Google Patents
可控制数据包传送的交换器及相关方法 Download PDFInfo
- Publication number
- CN1625160A CN1625160A CN200410100241.XA CN200410100241A CN1625160A CN 1625160 A CN1625160 A CN 1625160A CN 200410100241 A CN200410100241 A CN 200410100241A CN 1625160 A CN1625160 A CN 1625160A
- Authority
- CN
- China
- Prior art keywords
- packet
- interchanger
- transmission
- output port
- transfer mode
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 113
- 238000000034 method Methods 0.000 title claims description 17
- 238000012546 transfer Methods 0.000 claims description 45
- 238000013459 approach Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/40—Wormhole routing
-
- 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/18—End to end
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2408—Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
-
- 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
- H04L49/3009—Header conversion, routing tables or routing tags
-
- 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/60—Software-defined switches
- H04L49/602—Multilayer or multiprotocol switching, e.g. IP switching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9084—Reactions to storage capacity overflow
- H04L49/9089—Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/251—Cut-through or wormhole routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
Abstract
一种可用来控制网络内数据包传送的交换器,至少包含:至少一输入端口,用来接收数据包;多个输出端口,用来输出该输入端口接收的数据包;以及一判断逻辑,用来依据该输入端口所接收的数据包的传输特性以选择输出该数据包的输出端口。该交换器可以依据数据包的传输特性,来决定在分别连接到不同传输速率的不同传输途径的多个输出端口中,要使用那个输出端口来传输此数据包。
Description
技术领域
本发明涉及一种交换器,特别是涉及一种可依据接收的数据包的传输特性,选择使用连接到不同传输速度的传输途径的输出端口来传输数据包的交换器。
背景技术
随着网络的应用的蓬勃发展,个人与企业对于网络的依赖也越来越深。尤其是以太网络(Ethernet)的使用更是成为网络世界重要一环。国际标准组织(International Standard Organization,ISO)提供一套共通的开放系统连结模式(Open System Interconnect mode,OSI),其规范网络传输时一种共享的沟通模式,其中包含7层的沟通模式。规范这7层的目的是使得二系统的间的通信(传送、接收、中断等)能更加容易管理。有关OSI的功能与运用已为本领域的技术人员所熟知,在此不再赘述。
在传输数据前,会把数据分成一连串的包(packet),并在这些包前附加用来控制包传递的标头信息。请参阅图1,图1为数据连接层的包10的示意图。数据链路层(data link layer)属于OSI规范的第二层,也是交换器一般所使用处理的层级,而数据连接层包10包含一前序位(preamble)、目的地址(Destination)、原始地址(Source)、型态(Type)、数据(Data)、FCS等字段。其中前序位字段提供了数据包的起始、同步讯息以及译码等操作。目的地址字段储存了数据包接收端的地址,原始地址字段则储存该数据包传送端的地址,而目的地址字段以及原始地址字段储存的就是MAC地址,型态字段则储存了数据包所使用的通讯协议(例如使用IP通讯协议),数据域位则储存了包的数据内容,最后的包监测数据(Frame check sequence,FCS)字段则用来放置检查位,作为CRC错误检查之用。
请参阅图2,图2为局域网络20结构的示意图。局域网络20包含一个以上的集线器24或交换器26,而至少一个以上的主机(client)28则连接于集线器24或交换器26。由于在局域网络20有数十台甚至上百台主机28同时连上局域网络20,为了确保网络20的速度,集线器24以及交换器26都是用来增加讯号强度以及网络管理的功能。但是集线器24运作于OSI中的第一层实体层(Physical Layer),所以集线器24并不能分析出数据链路层包标头内的MAC地址字段。换言之,一旦集线器24收到一个数据包时,会把接收到的数据包传送到其余所有的连接端口。所以所有连接到同一台集线器的主机28都必须销耗频宽来处理此数据包,不能消除网络中包与包之间的碰撞。如果网络上的主机越来越多,网络的整体效能也会因频宽瓜分而下降。
交换器的产生正好解决上面的问题。由于交换器是运作于OSI中的第二层数据链路层(Data Link Layer),当数据被拆成一连串的包(Packet)时,交换器依据包中目的地的MAC地址(就是图1的目标地址字段),以点对点模式将包传送到目的地。由于交换器同时间可以有多个连接端口平行地传送(parallelism),如此可以减少包碰撞的机会和充分使用网络上的频宽,大大提高网络整体效能。
除了集线器以及交换器之外,还有另一种网络设备一路由器(router)。路由器主要的工作在于传输网络上的包(packet),而且路由器必需先将包的标头取下,根据标头内的各项信息分辨处理方式,以便完成包的传输工作。同时,路由器还具有选择适当传输路径的功能。路由器建立最佳路径的方式,是通过建立一个路径表(routing table),路径表会建立相关的地址,以供路由器作路径选择的参考。其中有建立相关地址以求得最佳路径的方法有两种常用的标准,分别为RIP(Routing Information Protocol)与OSPF(OpenShortest Path First)。RIP的原理是要求包对邻近的路由器发送出去,接受到的路由器便将路径纪录表(Routing Table)传回来,发出要求的路由器统计抵达每个目的位置所要经过的节点数,将最短的写在自己的路径纪录表上。OSPF跟RIP最大的不同处在于它不是两个邻近路由器的间彼此交换,而是对整体网络广播,而路由器收集这些讯息建构路径表。另一个不同处在于路由器以距离参数(Distance metric)取代单纯的经过节点数,以连结状况更新距离参数,然后用动态规划(Dynamic Programming)的算法算出最短路径,将下一个节点与计算出的总合的距离参数填入路径表。不论采用哪种方式,各路由器会自行探测讯息来沟通而建立彼此的路径表,所以可以显示目前各信道间的网络状况,如阻塞或中断,并据此产生最佳路径以确保数据包传递的流畅。
虽然路由器具有找寻最佳路径的功能,但是路由器是作用在OSI第三层网络层(network layer)上。一般常用的IP协议即属于网络层的协议,在网络层之上IP地址才有意义,网络层之下都是凭MAC地址来辨认。所以路由器在处理包时,并不像交换器可直接通过MAC地址来识别所要传送的地址,还必须通过ARP(Address Resolution Protocol)协议将IP地址转成MAC地址的协议,使得网络层以下各层知道将数据往哪送,或利用RARP(ReverseAddress Resolution Protocol)的操作便是将ARP反过来,以MAC地址得知IP地址。所以路由器需要的成本以及复杂度都比较高,也就在商业考虑下不易普遍取代交换器与集线器。
在网络中数据的传输,多是先将数据分解为多个包,再将这些包自来源端传输到目的端,而后在目的端组合接收到的包,即可完成。然而,由于传输的数据种类不同,对于在线电影或在线广播等语音影像数据,由于使用者观看收听时会要求影音流畅,并且通过影像/影音处理时可以明显减少部份由于包传输失误所引起的错误,因此对网络传输的要求重点在于传送速度的快速流畅。但对于电子邮件传输或程序文件传输而言,由于总是要整个完整的电子邮件/文件程序都传输完成才会开启使用,但若有部份包不能正常传输接收时便可能导致电子邮件/程序文件的内容错误,因此对网络传输的要求重点便在于传输内容的的正确性。
图3显示了已知技术中包含多数交换器的以太局域网500的基本结构图。每个交换器300a-300d分别包含一固定关系逻辑340a-340d,而且均包含多个连接端口(或为输入端口或为输出端口)3000,连接端口3000是与主机200、202或是其它交换器电连接。当以太局域网500建立好后,各个交换器之间的网络传输速率(或说理论上可以达到的最高传输速率)都是固定的,视其是用最高传输速率100MPS的网络电缆(如100BASE TX或100BASE T4)或用最高传输速率10Mbps的传输速率的网络电缆(如10BASE T)或是使用其它材料作的网络线。同时,各个交换器依照其设定,或是使用在接收完整包并确认其正确性后才再传输此包的储存全部包再传送(store and forward)模式,或是使用在确定传输方向后便一面接收部份包一面传输已经接收的部份包的储存部份包标头便再传送(cut through)模式,来使用其内部的队列缓存器等来处理数据包。换句话说,当以太局域网建立好后,自交换器300a到交换器300c或自交换器300b至交换器300d等等自一交换器至另一交换器的传输途径,其传输速率便是固定的,顶多是因为网络上有大量包要传输而降低其传输速。并且,由于已知交换器是处理MAC地址而不是处理IP地址,自一交换器至另一交换器的传输途径基本上也就是固定的。因此,若一个传输特性是需要高传输速率的包,其在不同交换器之间的传输途径被设定是经由传输速率较慢的网络线或使用储存全部包再传送模式的交换器时,传输速率将不能最佳化符合其需要。相对地,若一个传输特性是需要高传输正确性的包,其在不同交换器之间的传输途径被设定是经由使用储存部份包标头便再传送的交换器时,传输正确性也将不能最佳化符合其需要。而即便是高传输速率的网络线已经逐渐普及,但由于传输途径中交换器使用的模式,使得传输途径或是传输速率不够快或是不够正确的问题,将仍然存在。
进一步地,虽然已知的路由器具有搜寻最佳路径的功能,而且其可以是针对网络上各个传输路径的传输快慢来决定最佳路径。但是已知路由器多是用来连接一局域网络与另一局域网络,不能处理一局域网络内多数端点(如多数主机)之间的传输;而且已知路由器往往必须分解包到第三层,所需要的计算量明显较多且对硬件等的需求也较多,就商业成本考虑而言也不大适合如交换器一般普遍地应用在诸如单一局域网络内等的情形。
综上所述,如何设计一个能搜寻最佳传输路径以控制包传送的交换器是很重要的一种课题。
发明内容
本发明提供一种交换器及其运作方法,能依据接收的数据包的传输特性,选择将接收到的数据包通过那个输出端口(及其连接的网络传输途径)进行传输,以更有效率的在网络上传输数据包。
本发明的一实施例提供一种可用来控制网络内数据包的传送的交换器,其至少包含至少一输入端口,用来接收数据包;多个输出端口,用来输出该数据包;以及一判断逻辑,用来依据该输入端口所接收数据包的传输特性,选择输出该数据包的输出端口。
本发明的另一实施例提供一种使用具有多个输出端口的交换器来处理网络数据包的方法,该方法至少包含:接收一数据包;依据该数据包的传输特性由该多个输出端口中选择一输出端口来输出该数据包;以及经由选定的输出端口输出该数据包。
本发明的实现,可以在网络建立时,便让某交换器获得并储存将某交换器的所有输出端口所分别连接到的其它交换器等端点的模式,或是网络管理人员将相连接的其它交换器等端点的模式,定期地或不定期地更新至此交换器。而后,在此交换器运作时,便可以根据接收到的数据包的传输特性是需要高传输速率或高传输正确性,选择要用以传输此数据包的输出端口。一般而言,越是要求高传输速率的数据包,便越要使用连接到的传输途径尽可能都是使用储存部份包标头便再传送模式的交换器等的传输途径;而越是要求高传输正确性的数据包,便越要使用连接到的传输途径尽可能都是使用储存全部包再传送模式的交换器等的传输途径。
本发明还可以通过分析数据包内特定字节的内容来改变输出该数据包的输出端口,而不用和路由器一样改变需要变动数据包的标头(header),进而同时简化运作与降低成本。
附图说明
图1为数据链路层的包格式的示意图。
图2为局域网络结构的示意图。
图3为已知技术的交换器在以太局域网结构下与主机以及其它交换器的功能方块图。
图4为本发明一实施例的交换器在以太局域网结构下与主机以及其它交换器的功能方块图。
图5为IP包的格式的示意图。
图6为TCP包的格式的示意图。
图7为UDP包的格式的示意图。
图8为本发明的流程图。
附图符号说明
10 数据链路层包 20、50 局域网络
24 集线器 26 交换器
28 主机 30a-d 交换器
300a-d 交换器 34a-d 判断逻辑
340a-d 固定关系逻辑 40a-d 主机
42、44 传输电缆 200、202 主机
301-304 连接端口 3000 连接端口
具体实施方式
请参阅图4,图4显示包含多个本发明一实施例的交换器的以太局域网50的基本结构图。每个交换器30a-30d分别包含一判断逻辑34a-34d,而且均包含多个连接端口(或为输入端口或为输出端口)301-304;同时交换器30c使用储存部份包标头便再传送模式,而交换器30b则使用储存全部包再传送模式。除此之外,介于任二个交换器之间的网络线,可以都是相同最高传输速率的网络线,也可以是最高传输速率各不相同的网络线,本实施例并不须限制网络线的细节。
显然地,当以太局域网50建立好后,自交换器30a至交换器30d的数据包传输路线,若是经由交换器30c则将在交换器30c获得较快的处理速率,也较就适合于传输特性是需要高传输速率的多媒体文件等的数据包;而若是经由交换器30b则将在交换器30b获得较能确保正确性的传输结果,也就较适合于传输特性是需要高传输正确性的程序文件等的数据包。
因此,本实施例的一大特征,便是在于交换器30a的判断逻辑34a,加入根据接收到数据包的传输特性来决定要用连接到交换器30c的输出端口或连接到交换器30b的输出端口来传输此数据包。当然,本特征可以扩展到多个交换器中每一个交换器都具有如此功能的判断逻辑。在此,判断逻辑34a的构成,可以是由用以记录各个输出端口所连接到的其它交换器(或主机等)的处理数据包模式的存储器,用以解析阅读数据包的硬件/固件,用以跟据解析阅读所得数据与储存于存储器中数据来决定要用那个输出端口输出的电路等所组成。其中,存储器是已知技术,将在网络建立时或连接交换器与周围端点时所得到数据写入存储器也是已知技术,解析阅读数据包的硬件/固件可以藉由修改已知交换器原本就要用来解析阅读数据包的MAC地址的硬件/固件来实现,而根据两个数据来源进行“若A则B与若C则D”等运算来将某对象A(即数据包)指到多个对象B(即多个输出端口)中的某一个也是已知技术。也就是说,本发明的一大重点是在于使用判断逻辑来根据数据包的传输特性来选择使用某个输出端口来传输数据包,而不是根据数据包是由那个输入端口被接收到来决定要由那个输出端口的想法,也无关于如何作出判断逻辑的硬件或固件。
本发明判断数据包的传输特性,是要判断数据包是高传输速率需求或高传输精确度需求。其具体作法,至少可以是通过判断包的内容是属于倾向高传输速率需求的多媒体文件或是属于倾向高传输精确度需求的程序文件;也可以通过判断包的格式是属于传输速率较快的包格式或是属于较能确保传输正确性的包格式;或也可以是通过解读包内某些特定位的内容,来判断包的属性。
说明本发明的运作原理之前,在此先简单介绍一下IP包、TCP包以及UDP包的格式。请先参阅图5,图5是IP包的格式。从图5可以发现,IP包的版本(Version)字段是用来规范此包所用的协议的版本,以利各开发商使用。标头长度(Internet Header Length,IHL)字段是规范此IP包的IP标头的长度,其储存的值为5~15,以图5为例,IHL字段储存的值为5。而总长度(Total Length)字段则储存整个IP包的长度,包括IP标头长度以及数据长度。协议识别(Protocol)字段则储存该IP包使用哪一种网络层协议,举例来说,协议识别字段储存的值为6时,表示TCP协议,协议识别字段储存的值为17时,表示UDP协议。标头检验和(Checksum)字段则用来确保IP标头的完整性。来源地址(Source address)字段则用来储存送出包主机的地址。目的地址(Destination address)则用来储存接收主机的地址。这里指的来源地址与目的地址就是所谓的IP地址。而数据域位则用来储存数据。
由于IP包的传送是在不同时间抵达,换言之,包到达的顺序不保证是原来发送的顺序,而且传输过程可能会发生错误。所以为了确保包正确抵达,一般来说,会使用TCP协议来加强传输的可靠性,所以在IP包的数据域位还储存有TCP包。请参阅图6,图6是TCP包的格式。对TCP包来说,来源端口(Source port)字段是用来定义来源主机的行程与服务地址,与来源主机的IP地址结合后,会形成单一的发送点。目的端口(Destination port)字段用来定义目的主机的行程与服务地址,与目的主机的IP地址结合后,会形成单一的发送点。举例来说,若端口号码为25,则会将该数据包交由SMTP服务使用、若端口号码为21则给FTP服务使用、若端口号码为23则给TELNET服务使用。序列号(sequence number)字段则储存了来源主机所送出的第一个字节数据的顺序编号。而确认号(Acknowledgement number)字段则储存了来源主机通知目的主机应该送出哪个序列号的数据。一般来说,使用TCP协议传送数据是为了确保数据传送的可靠性,也就是保证使用TCP协议传输的包一定会顺序一致地抵达目的。关于TCP包的传送机制,已为本领域的技术人员所熟知,在此不再赘述,详细的内容说明可参阅RFC-793、RFC-1122、RFC-813、RFC-879、RFC-896说明。
请参阅图7,图7是UDP包的格式。对UDP包来说,来源端口(Source port)字段用来定义来源主机的行程与服务地址。目的端口(Destination port)字段用来定义目的主机的行程与服务地址。由于使用UDP协议不保证送出的数据包一定会抵达目的,或以正确的顺序抵达。然而在一般局域网之中,以UDP协议传输的数据包几乎能达到100%的抵送率,而且抵达速度也可能比接收端的处理速度还快,这是因为UDP通讯协议所使用的包短且设定参数简易,不像TCP需要提供额外的字段来控制传输可靠性,所以在网络上的负载较TCP协议轻了许多,故常用于多媒体数据的传输。UDP包的传送机制,已为本领域的技术人员所熟知,在此不再赘述,详细的内容说明可参阅RFC-768的说明。
请注意,对图1的数据链路层包10来说,图5的属于网络层的IP包即储存在数据链路层包10的数据域位之中。对IP包来说,图6的TCP包或图7的UDP包即储存于IP包之中。
由图1、图3、图4、图5、图6以及图7观之,每个数据包在特定的地址字段(亦即特定的字节)都已经有固定的定义。所以当交换器30a的输入端口301在接收到来自主机40a数据包后,判断逻辑34a可以在移除数据连接层的标头后,在不用移除IP标头的情况下,读取属于网络层的IP标头的特定字段上的数据。请注意,交换器30a原先就只能应用于数据链路层,所以判断逻辑34a并不需要分析属于网络层以上的IP标头以及TCP/UDP标头内的内容,只需要在取下属于数据链路层的标头后,读取由版本字段算起第1位至第4位内的数值判断接收的IP包所使用的版本,第5位至第8位内的数值判断IP包所使用的标头长度,第73位到第80位内的数值来判断此包使用何种协议来传送,以此类推,之后的来源地址、目的地址,也可以同样的方式来判断。当然,IP标头之后就是TCP/UDP包的标头,从图5来看,标头长度字段所储存的值是5,所以从版本字段算起第161位至第176位属于TCP/UDP包的来源端口(source port)字段,第177位至192位属于TCP/UDP包的目的端口(source port)字段。所以判断逻辑也可以快速地了解此包所使用的端口号码为何,以决定此包属于何种服务所使用,举例来说,若端口号码为25,则会将该数据包交由SMTP服务使用、若端口号码为21则给FTP服务使用。最后,判断逻辑34a就可以依据使用的传输协议等数据来决定要用哪一个连接端口来输出数据包。
举例来说,假设主机40a利用UDP协议传送一多媒体数据文件至主机40b,而主机40d利用TCP协议传送一电子邮件至主机40c。当交换器30a在接收到由连接端口301传来主机40a送来的数据包后,判断逻辑34a可由MAC地址字段得出该包需传送至主机40b,但是传送至主机40b的路径有两条,一条是经由输出端口303传送至交换器30c,之后再经由交换器30d抵达主机40b,另一条是经由输出端口304传送至交换器30b,再经由交换器30d抵达主机40b。所以判断逻辑34a利用版本字段算起第73至第80位的数值为17,判断该数据包使用UDP协议后,可使用连接至的交换器30c是使用储存部份包标头便再传送模式的输出端口303来传送该数据包c,同样地,判断逻辑34c在判断该数据包的目的MAC地址以及使用UDP协议后,会将该包传送至交换器30d,最后,交换器30d在依据包内的MAC地址字段将该包传送至主机40b。相对地,交换器30a在接收到由连接端口302传来主机40d送来的数据包后,判断逻辑34a可由MAC地址字段得出该包需传送至主机40c,还可以由版本字段算起第73至第80位的数值为6,判断该数据包使用TCP协议,之后使用连接至的交换器30b是使用储存全部包再传送模式的输出端口304传送该数据包至交换器30b,同样地,判断逻辑34b在判断该数据包的目的MAC地址以及使用TCP协议后,会将该包传送至交换器30d,最后,交换器30d在依据包内的MAC地址字段将该包传送至主机40c。当然,判断逻辑34决定数据包的优先性的原则不只是判断IP包的协议识别字段的值,还可以利用TCP/UDP包内的来源端口以及目的端口的端口号码来决定该数据包的优先性。总而言之,交换器30a可依据不同数据包所使用的传输特性等来决定用来输出数据包的输出端口。
在图4中,交换器30b-30d也可以由集线器、讯号加强器(repeater)或桥接器(bridge)等其它网络设备取代。只要当判断逻辑34a在判断该数据包的所使用的传输协议以决定该数据包传送的优先性后(假设定义UDP的优先性大于TCP),判断逻辑34a即会针对交换器30a的连接端口303、304的传输状况做出分析,选择让UDP包从连接到使用使用储存部份包标头便再传送模式的交换器的连接端口送出,以维持主机40b的正常接收。
进一步地,本发明的实施例还可以有下列的种种变化:
(a)当数据包的传输特性是倾向于需要高传输速率(例如多媒体数据文件),判断逻辑选取一输出端口,其对应的网络传输途径上的交换器系多数使用「储存部份包标头便再传送」模式来输出数据包,并利用该选取的输出端口来传输数据包;
(b)当数据包的传输特性是倾向于高传输速率,判断逻辑选取连接到的网络传输途径上最邻近的交换器系使用「储存部份包标头便再传送」模式的一输出端口来传输数据包。
(c)若不只一个输出端口所连接到的网络传输途径上的其它交换器使用「储存部份包标头便再传送」模式,判断逻辑在先后接收到传输特性皆为高传输速率的多个数据包时,轮流使用这些有连接到使用「储存部份包标头便再传送」模式的其它交换器的这些输出端口来输出数据包。
(d)当数据包的传输特性是倾向于高传输正确性时,判断逻辑选取一输出端口,其对应的网络传输途径上的交换器是多数使用「储存全部包再传送」模式来输出数据包,并利用该选取的输出端口来传输数据包;
(e)当数据包的传输特性是倾向于高传输正确性,判断逻辑选取连接到的网络途径上最邻近的交换器是使用「储存全部包再传送」模式的一输出端口来传输数据包。
(f)若不只一个该输出端口所连接到的网络传输途径上的其它交换器使用「储存全部包再传送」模式,判断逻辑在先后接收到传输特性皆为高传输速率的多个数据包时,轮流使用这些有连接到使用「储存全部包再传送」模式的其它交换器的这些输出端口来进行传输。
请参阅图8,图8为本发明的方法流程图。其步骤说明如下。
步骤100:检测交换器的多个输出端口所个别连接到的交换器的模式;
步骤102:由交换器的输入端口接收一数据包;
步骤104:依据该数据包的传输特性由该多个输出端口中选择一输出该数据包的输出端口;以及
步骤106:经由选定输出该数据包的输出端口输出该数据包。
相较于已知技术,本发明的交换器可以利用目前网络层包具有的特定位置的字节的规范下,对于用于分析数据链路层的交换器来说,除了拆解并分析数据链路层的标头外,再不需另外拆解网络层包的标头的情况下,只要再去读取网络层包的标头的固定位置字段的数据,就可以识别出该网络层包所使用的协议以及使用的端口号码等等,以决定该网络层包的数据重视的是时效性或是正确性。除此之外,由于交换器具有连接到不同模式的不同其它交换器的多数连接端口,若判断网络层包对时效性的要求较高,则可以利用连接到使用储存部份包标头便再传送模式的交换器的输出端口来输出网络层包;而若判断网络层包对正确性的要求较高,则可以利用连接到使用储存全部包再传送模式的交换器的输出端口输出数据包,这么一来,就可以达到最佳的网络传输管理。
以上所述仅为本发明的较佳实施例,凡依本发明的权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (12)
1.一种交换器,用来控制网络内数据包的传送,其包含:
至少一输入端口,用来接收一数据包;
多个输出端口,用来输出接收到的该数据包,其中任一该输出端口皆连接到一网络传输途径;以及
一判断逻辑,用来依据所接收的数据包的传输特性,选择一该输出端口来输出该数据包。
2.如权利要求1所述的交换器,其中该数据包是符合IP协议的包。
3.如权利要求1所述的交换器,其中当该数据包的传输特性是倾向于高传输速率时,该判断逻辑至少使用下列规则之一:
选取连接到的网络传输途径上的至少一交换器是多数使用储存部份包标头便再传送模式的一该输出端口来传输该数据包;
选取连接到的网络途径上最邻近的交换器是使用储存部份包标头便再传送模式的一该输出端口来传输该数据包;以及
当不只一个该输出端口所连接到的网络传输途径上的其它交换器使用储存部份包标头便再传送模式时,轮流使用这些有连接到使用储存部份包标头便再传送模式的其它交换器的这些输出端口来进行传输。
4.如权利要求1所述的交换器,其中当该数据包的传输特性是倾向于高传输正确性时,该判断逻辑至少使用下列规则之一:
选取连接到的网络传输途径上的至少一交换器是多数使用储存全部包再传送模式的一该输出端口来传输该数据包;
选取连接到的网络途径上最邻近的交换器是使用储存全部包再传送模式的一该输出端口来传输该数据包;以及
若不只一个该输出端口所连接到的网络传输途径上的其它交换器是使用储存全部包再传送模式时,轮流使用这些有连接到使用储存全部包再传送模式的其它交换器的这些输出端口来进行传输。
5.如权利要求1所述的交换器,其中该判断逻辑依据该数据包的协议识别字段的数据来决定该数据包所使用的传输协议,并进而决定该数据包的传输特性。
6.如权利要求5所述的交换器,其中该判断逻辑至少使用下列规则:
当该数据包所使用的传输协议是UDP,则该数据包的传输特性为倾向高传输速率;以及
当该数据包所使用的传输协议是TCP,则该数据包的传输特性为倾向高传输正确性。
7.一种交换器处理网络的数据包的方法,该交换器包含多个输出端口,该方法包含:
接收一数据包;
依据该数据包的传输特性,选择一该输出端口来输出该数据包;以及
经由选定的该输出端口输出该数据包。
8.如权利要求7所述的方法,其中该数据包是符合IP协议的包。
9.如权利要求7所述的方法,其中当该数据包的传输特性是倾向于高传输速率时,该方法还包含至少使用下列规则之一:
选取连接到的网络传输途径上的至少一交换器是多数使用储存部份包标头便再传送模式的一该输出端口来传输该数据包;
选取连接到的网络途径上最邻近的交换器是使用储存部份包标头便再传送模式的一该输出端口来传输该数据包;以及
若不只一个该输出端口所连接到的网络传输途径上的其它交换器是使用储存部份包标头便再传送模式时,轮流使用这些有连接到使用储存部份包标头便再传送模式的其它交换器的这些输出端口来进行传输。
10.如权利要求7所述的方法,其中当该数据包的传输特性是倾向于高传输正确性时,该方法还包含至少使用下列规则之一:
选取连接到的网络传输途径上的至少一交换器是多数使用储存全部包再传送模式的一该输出端口来传输该数据包;
选取连接到的网络途径上最邻近的交换器是使用储存全部包再传送模式的一该输出端口来传输该数据包;以及
若不只一个该输出端口所连接到的网络传输途径上的其它交换器是使用储存全部包再传送模式时,轮流使用这些有连接到使用储存全部包再传送模式的其它交换器的这些输出端口来进行传输。
11.如权利要求7所述的方法,其包含依据该数据包的协议识别字段的数据来决定该数据包所使用的传输协议,并进而决定该数据包的传输特性。
12.如权利要求11所述的方法,其包含至少使用下列规则:
当该数据包所使用的传输协议是UDP,则该数据包的传输特性为倾向高传输速率;以及
当该数据包所使用的传输协议是TCP,则该数据包的传输特性为倾向高传输正确性。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US48177803P | 2003-12-12 | 2003-12-12 | |
US60/481,778 | 2003-12-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1625160A true CN1625160A (zh) | 2005-06-08 |
Family
ID=34794173
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101002392A Active CN100481810C (zh) | 2003-12-12 | 2004-12-13 | 改善传输效率的网络系统及相关方法 |
CN200410100241.XA Pending CN1625160A (zh) | 2003-12-12 | 2004-12-13 | 可控制数据包传送的交换器及相关方法 |
CN200410100240.5A Pending CN1625159A (zh) | 2003-12-12 | 2004-12-13 | 可控制数据包传送的交换器及相关方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101002392A Active CN100481810C (zh) | 2003-12-12 | 2004-12-13 | 改善传输效率的网络系统及相关方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200410100240.5A Pending CN1625159A (zh) | 2003-12-12 | 2004-12-13 | 可控制数据包传送的交换器及相关方法 |
Country Status (3)
Country | Link |
---|---|
US (3) | US20050129047A1 (zh) |
CN (3) | CN100481810C (zh) |
TW (3) | TWI277322B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026585B (zh) * | 2006-07-27 | 2010-05-26 | 威盛电子股份有限公司 | 管理网络装置的频宽配置的方法 |
CN101626343B (zh) * | 2009-08-05 | 2012-04-04 | 华为技术有限公司 | 数据包交换的方法、装置和通信设备 |
CN106792024A (zh) * | 2016-12-19 | 2017-05-31 | 北京小米移动软件有限公司 | 多媒体信息的分享方法及装置 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6360100B1 (en) | 1998-09-22 | 2002-03-19 | Qualcomm Incorporated | Method for robust handoff in wireless communication system |
US7668541B2 (en) | 2003-01-31 | 2010-02-23 | Qualcomm Incorporated | Enhanced techniques for using core based nodes for state transfer |
FR2858502B1 (fr) * | 2003-08-01 | 2006-02-24 | Cit Alcatel | Dispositif et procede de traitement de donnees de trafic reseau pour l'auto-configuration d'un routeur |
US20050213595A1 (en) * | 2004-03-23 | 2005-09-29 | Takeshi Shimizu | Limited cyclical redundancy checksum (CRC) modification to support cut-through routing |
US20060059341A1 (en) * | 2004-09-14 | 2006-03-16 | Dharmadhikari Abhay A | Apparatus and method capable of network access |
US20060215596A1 (en) * | 2005-03-23 | 2006-09-28 | Intel Corporation | Network aware cross-layer protocol methods and apparatus |
US20060268692A1 (en) * | 2005-05-31 | 2006-11-30 | Bellsouth Intellectual Property Corp. | Transmission of electronic packets of information of varying priorities over network transports while accounting for transmission delays |
US7558275B2 (en) * | 2005-09-13 | 2009-07-07 | Sony Corporation | System and method for clock replication using reference clock |
US9078084B2 (en) | 2005-12-22 | 2015-07-07 | Qualcomm Incorporated | Method and apparatus for end node assisted neighbor discovery |
US8983468B2 (en) | 2005-12-22 | 2015-03-17 | Qualcomm Incorporated | Communications methods and apparatus using physical attachment point identifiers |
US8509799B2 (en) | 2005-09-19 | 2013-08-13 | Qualcomm Incorporated | Provision of QoS treatment based upon multiple requests |
US8982778B2 (en) | 2005-09-19 | 2015-03-17 | Qualcomm Incorporated | Packet routing in a wireless communications environment |
US9736752B2 (en) | 2005-12-22 | 2017-08-15 | Qualcomm Incorporated | Communications methods and apparatus using physical attachment point identifiers which support dual communications links |
US9066344B2 (en) | 2005-09-19 | 2015-06-23 | Qualcomm Incorporated | State synchronization of access routers |
KR101224591B1 (ko) * | 2006-02-23 | 2013-01-22 | 삼성전자주식회사 | 네트워크 중계 장치 및 그 방법 |
US9083355B2 (en) | 2006-02-24 | 2015-07-14 | Qualcomm Incorporated | Method and apparatus for end node assisted neighbor discovery |
KR101517705B1 (ko) * | 2006-04-25 | 2015-05-04 | 인터디지탈 테크날러지 코포레이션 | 메시 무선 근거리 통신망에서의 고처리율 채널 동작 |
KR101203471B1 (ko) * | 2006-06-29 | 2012-11-21 | 삼성전자주식회사 | 네트워크 브리지에서 이더넷 프레임을 전달하는 방법 및상기 브리지 장치 |
US9155008B2 (en) | 2007-03-26 | 2015-10-06 | Qualcomm Incorporated | Apparatus and method of performing a handoff in a communication network |
US8830818B2 (en) | 2007-06-07 | 2014-09-09 | Qualcomm Incorporated | Forward handover under radio link failure |
US9094173B2 (en) | 2007-06-25 | 2015-07-28 | Qualcomm Incorporated | Recovery from handoff error due to false detection of handoff completion signal at access terminal |
US8310931B2 (en) * | 2008-07-18 | 2012-11-13 | International Business Machines Corporation | Discovering network topology from routing information |
US8559307B2 (en) * | 2009-12-28 | 2013-10-15 | Empire Technology Development Llc | Routing packets in on-chip networks |
US8340112B2 (en) * | 2010-03-25 | 2012-12-25 | International Business Machines Corporation | Implementing enhanced link bandwidth in a headless interconnect chip |
US8615241B2 (en) | 2010-04-09 | 2013-12-24 | Qualcomm Incorporated | Methods and apparatus for facilitating robust forward handover in long term evolution (LTE) communication systems |
TWI457032B (zh) * | 2012-02-20 | 2014-10-11 | Wistron Neweb Corp | 提供多重服務之路由方法、系統以及行動通訊路由器 |
CN104255004B (zh) * | 2012-04-26 | 2017-11-03 | 飞思卡尔半导体公司 | 直通转发模块及在直通转发模式下接收和发射数据帧的方法 |
TWI481230B (zh) * | 2013-01-08 | 2015-04-11 | D Link Corp | Analyze the data packets to select the connection path for the connection path |
CN103391244B (zh) * | 2013-07-30 | 2018-01-02 | 上海斐讯数据通信技术有限公司 | 一种大流量数据包的转发方法 |
JP6323194B2 (ja) * | 2014-06-13 | 2018-05-16 | 富士通株式会社 | ネットワーク管理装置及び方法 |
CN109587084A (zh) * | 2015-12-30 | 2019-04-05 | 华为技术有限公司 | 一种报文存储转发方法和电路及设备 |
WO2017172681A1 (en) * | 2016-04-01 | 2017-10-05 | Idac Holdings, Inc. | Mitigating crc calculations in networks that utilize segment routing |
EP3700146A1 (de) | 2019-02-22 | 2020-08-26 | Siemens Aktiengesellschaft | Verfahren zum betrieb eines kommunikationssystems zur übermittlung zeitkritischer daten und kommunikationsgerät |
US10880234B2 (en) * | 2019-05-21 | 2020-12-29 | Mellanox Technologies Tlv Ltd. | Cut-through switching system |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5179551A (en) * | 1991-04-08 | 1993-01-12 | Washington University | Non-blocking multi-cast switching system |
US5521913A (en) * | 1994-09-12 | 1996-05-28 | Amber Wave Systems, Inc. | Distributed processing ethernet switch with adaptive cut-through switching |
US5568476A (en) * | 1994-10-26 | 1996-10-22 | 3Com Corporation | Method and apparatus for avoiding packet loss on a CSMA/CD-type local area network using receive-sense-based jam signal |
JP3420664B2 (ja) * | 1995-12-20 | 2003-06-30 | 株式会社東芝 | パケット送信ノード装置、パケット受信ノード装置及びコネクション設定方法 |
JPH1198183A (ja) * | 1997-09-17 | 1999-04-09 | Toshiba Corp | 中継装置 |
US6144668A (en) * | 1997-11-26 | 2000-11-07 | International Business Machines Corporation | Simultaneous cut through and store-and-forward frame support in a network device |
JP3816246B2 (ja) * | 1998-10-30 | 2006-08-30 | 株式会社東芝 | カットスルーパス制御方法 |
US20020085565A1 (en) * | 2000-12-28 | 2002-07-04 | Maple Optical Systems, Inc. | Technique for time division multiplex forwarding of data streams |
US20020118692A1 (en) * | 2001-01-04 | 2002-08-29 | Oberman Stuart F. | Ensuring proper packet ordering in a cut-through and early-forwarding network switch |
US7042891B2 (en) * | 2001-01-04 | 2006-05-09 | Nishan Systems, Inc. | Dynamic selection of lowest latency path in a network switch |
-
2004
- 2004-10-20 TW TW093131862A patent/TWI277322B/zh not_active IP Right Cessation
- 2004-11-12 TW TW093134756A patent/TWI261442B/zh not_active IP Right Cessation
- 2004-11-30 TW TW093136896A patent/TWI284469B/zh active
- 2004-12-01 US US10/904,870 patent/US20050129047A1/en not_active Abandoned
- 2004-12-08 US US10/904,997 patent/US20050129012A1/en not_active Abandoned
- 2004-12-09 US US10/905,017 patent/US20050128949A1/en not_active Abandoned
- 2004-12-13 CN CNB2004101002392A patent/CN100481810C/zh active Active
- 2004-12-13 CN CN200410100241.XA patent/CN1625160A/zh active Pending
- 2004-12-13 CN CN200410100240.5A patent/CN1625159A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026585B (zh) * | 2006-07-27 | 2010-05-26 | 威盛电子股份有限公司 | 管理网络装置的频宽配置的方法 |
CN101626343B (zh) * | 2009-08-05 | 2012-04-04 | 华为技术有限公司 | 数据包交换的方法、装置和通信设备 |
CN106792024A (zh) * | 2016-12-19 | 2017-05-31 | 北京小米移动软件有限公司 | 多媒体信息的分享方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20050129047A1 (en) | 2005-06-16 |
CN100481810C (zh) | 2009-04-22 |
TW200520475A (en) | 2005-06-16 |
US20050129012A1 (en) | 2005-06-16 |
CN1625159A (zh) | 2005-06-08 |
TWI261442B (en) | 2006-09-01 |
US20050128949A1 (en) | 2005-06-16 |
TW200520477A (en) | 2005-06-16 |
TWI284469B (en) | 2007-07-21 |
CN1625158A (zh) | 2005-06-08 |
TW200520476A (en) | 2005-06-16 |
TWI277322B (en) | 2007-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1625160A (zh) | 可控制数据包传送的交换器及相关方法 | |
CN101573913B (zh) | 用于多播路由选择的方法和设备 | |
US9264341B2 (en) | Method and system for dynamic routing and/or switching in a network | |
US6262976B1 (en) | System and method for network flow optimization using traffic classes | |
CN101924695B (zh) | 用于网络连接的方法和系统 | |
CN105791214B (zh) | 一种RapidIO报文和以太网报文之间的转换方法和设备 | |
US20050060418A1 (en) | Packet classification | |
EP1657633A1 (en) | Routing and forwarding table management for network processor architectures | |
US7796513B2 (en) | Packet classification using modified range labels | |
WO2018010529A1 (en) | Method and apparatus for an information-centric mac layer | |
CN102957619B (zh) | 虚拟路由系统及方法 | |
CN1242548A (zh) | 通过传输冗余语音/媒体帧进行因特网实时媒体传输的方法 | |
CN1781286A (zh) | 用于分组分类和重写的方法和装置 | |
US20110292793A1 (en) | Communication apparatus, communication method, and computer program | |
CN101247308A (zh) | 基于网络处理器实现IPv6穿越IPv4的隧道报文处理方法 | |
CN1353526A (zh) | 移动网络和ip分组传送方法 | |
CN101789949B (zh) | 一种实现负荷分担的方法和路由设备 | |
CN108347392B (zh) | 业务报文跨板处理方法、装置及系统 | |
MXPA02005419A (es) | Metodo y sistema para clasificacion de protocolo y cuadro. | |
CN1703890A (zh) | 数据网络中识别和分析协议的方法 | |
CN111131535B (zh) | 一种RapidIO动态地址映射系统 | |
CN1781293A (zh) | 用于修改从源传输到目的地的数据的系统和方法 | |
US9143448B1 (en) | Methods for reassembling fragmented data units | |
CN1777148A (zh) | 一种路由表下一跳ip地址到mac地址解析方法 | |
Geissler et al. | Tablevisor 2.0: Towards full-featured, scalable and hardware-independent multi table processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |