WO2012089037A1 - 一种通信***中的数据转发方法、装置和*** - Google Patents
一种通信***中的数据转发方法、装置和*** Download PDFInfo
- Publication number
- WO2012089037A1 WO2012089037A1 PCT/CN2011/084129 CN2011084129W WO2012089037A1 WO 2012089037 A1 WO2012089037 A1 WO 2012089037A1 CN 2011084129 W CN2011084129 W CN 2011084129W WO 2012089037 A1 WO2012089037 A1 WO 2012089037A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- data packet
- service processing
- source end
- processing node
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- 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
-
- 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/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- 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/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
Definitions
- the invention relates to a data forwarding method, device and system in a communication system.
- the application is filed on December 31, 2010, and the application number is 201010619765.
- the priority of the Chinese Patent Application the entire disclosure of which is incorporated herein by reference.
- the present invention relates to the field of communications technologies, and in particular, to a data forwarding method, apparatus, and system in a communication system. Background technique
- the request packet and the response packet need to pass through the data forwarding device twice. This increases the bandwidth requirement of the data forwarding device. For example, if the bandwidth of the client and server requires 10G, the bandwidth of the data forwarding device needs 20G.
- the service processing node is forwarded back; it can be forwarded directly from the data forwarding device to the device of the terminal and the service provider (SP), thereby reducing the bandwidth requirements and processing pressure of the data forwarding device and the service processing node.
- SP service provider
- a static policy is configured to perform data forwarding, and the destination IP and port rules are configured in advance, and the uplink and downlink data packets conforming to the static rules are directly routed and released (that is, data is forwarded by using a high-speed channel), and the forwarding policy is controlled.
- the method is not flexible enough, and the application limitation is not conducive to widespread use. Summary of the invention
- a technical problem to be solved by embodiments of the present invention is to provide a data forwarding method, apparatus, and system in a communication system.
- the data forwarding method embodiment provided by the present invention can be implemented by the following technical solutions:
- the data forwarding device forwards the data packet from the source end to the sink end by using the low-speed channel; the data forwarding device receives the control command sent by the service processing node in the process of forwarding the data packet from the source end to the sink end by using the low-speed channel, Control command is used to indicate the source end The data packet does not need to be forwarded to the service processing node;
- the data forwarding device forwards the data packet from the source end to the sink end by using a high speed channel according to the indication of the control command.
- a method of data forwarding including:
- the service processing node receives the data packet sent by the data forwarding device from the source end by using the low speed channel
- the service processing node performs protocol identification and >3 ⁇ 4 text processing on the data >3, and determines whether the data packet sent by the source end needs to be processed by the service processing node;
- the data forwarding device sends a control command to the data forwarding device, so that the data forwarding device does not need to forward the data packet to the service processing node, so that the data forwarding device uses the high-speed channel to forward the data packet from the source to the sink. .
- a data forwarding device includes:
- the low-speed forwarding unit is configured to forward the data packet from the source end to the sink end by using a low-speed channel.
- the control command receiving unit is configured to receive the service processing node in the process of forwarding the data packet from the source end to the sink end by using the low-speed channel. a control command, where the control command is used to indicate that the data packet of the source end does not need to be forwarded to the service processing node;
- the high-speed forwarding unit is configured to forward the data packet from the source end to the sink end by using a high-speed channel according to the indication of the control command.
- a service processing node including:
- a message receiving unit configured to receive a data packet sent by the data forwarding device from the source end by using a low speed channel
- the packet processing unit performs protocol identification and packet processing on the data packet from the source end, and determines whether the data packet sent by the source end needs to be processed by the service processing node; the command sending unit is used to report And the data processing device sends a control command to the data forwarding device, so that the uplink data packet of the source end does not need to be forwarded to the service processing node, so that the data forwarding device uses the high-speed channel to follow the source end.
- the sent data packet is forwarded to the sink.
- a data forwarding system includes: a data forwarding device and a service processing node provided by the embodiments of the present invention.
- the foregoing technical solution has the following beneficial effects:
- the service processing node performs service processing, it is determined whether to continue to use the low-speed channel for data forwarding, and then the data forwarding device is controlled to select the high-speed channel for data forwarding.
- the strategy of dynamically controlling data transmission is realized, and the method of forwarding policy control is flexible, and the application limitation is less favorable for widespread use.
- FIG. 1A is a schematic diagram of a data flow direction of a method according to an embodiment of the present invention.
- FIG. 1B is a schematic flowchart of a method according to an embodiment of the present invention.
- FIG. 2 is a schematic flowchart of a method according to an embodiment of the present invention.
- FIG. 3 is a schematic flowchart of a method according to an embodiment of the present invention.
- FIG. 4 is a schematic structural view of an apparatus according to an embodiment of the present invention.
- Figure 5 is a schematic structural view of an apparatus according to an embodiment of the present invention.
- FIG. 6 is a schematic structural diagram of an apparatus according to an embodiment of the present invention.
- FIG. 7 is a schematic structural diagram of a system according to an embodiment of the present invention.
- the embodiment of the present invention provides a data forwarding method, as shown in FIG. 1A, and can refer to FIG. 1B.
- the execution body of the method can be a data forwarding device, such as a load balancer (LB), a line card (Line). Card, LC), etc., including:
- 101B The data forwarding device forwards the data packet from the source end to the sink end by using the low-speed channel.
- 102B The data forwarding device uses the low-speed channel to forward the data packet from the source end to the sink end, and receives the control sent by the service processing node. Command, the above control command is used to indicate the above The data packet at the source end does not need to be forwarded to the service processing node.
- the data forwarding device forwards the data packet from the source end to the sink end by using the high speed channel according to the indication of the foregoing control command.
- the method of FIG. 1B is illustrated in FIG. 1A as follows:
- the source end 101A sends a data packet to the data forwarding device 102A, and the data forwarding device 102A forwards the received data packet to the service processing node 103A, as indicated by the solid line.
- the service processing node 103A sends a control command to the data forwarding device 102A, as indicated by a unidirectional arrow direction indicated by a dot; the data forwarding device uses the high speed channel to forward the source 101A and the sink 104A according to the indication of the control command.
- Data message between as indicated by the direction of the double arrow.
- the data forwarding device provides a low speed channel and a high speed channel function.
- the data packet needs to be sent to the service processing node.
- the service processing node After the service processing node performs protocol identification, packet modification, and other service processing, it is forwarded to the data forwarding device, and then the data forwarding device performs the data forwarding device to the terminal or the SP side.
- Packet forwarding that is, in the low-speed channel, the uplink and downlink packets need to pass through the load balancer and the service processing node twice.
- the data flow between the data forwarding device and the service processing node is: the terminal uplink data packet is distributed by the data forwarding device to the service processing node; after the service processing node performs the service processing, the uplink data is The message is then sent to the data forwarding device; the data forwarding device is then sent to the SP/Content Provider (Content Providert, CP).
- the data flow of the downlink data packet corresponds to the data flow of the data packet of the uplink data packet, and can be simply described as "SP/CP data forwarding device service processing node data forwarding device terminal", and will not be described again.
- the data packet is directly forwarded to the next-hop network device. That is, for the uplink and downlink packets between the terminal and the SP/CP, the data forwarding device directly performs the third- and fourth-layer routing and forwarding of the packet, that is, Said that the above-mentioned uplink and downlink "3 ⁇ 4 texts are not processed by the service processing node.
- the service scenario of the transparent proxy or the listening mode is taken as an example.
- the quintuple information of the service flow in the prior art is processed by the data forwarding device, the quintuple information cannot be changed when interacting with the terminal and the SP/CP, so the networking is performed.
- all the uplink and downlink data packets must pass through the data forwarding device and the service processing node.
- the above quintuple information is: an Internet Protocol (IP) address of the terminal, a port (Port), an IP address corresponding to the SP, a port (Port), and a protocol type. More specifically, after the service processing node performs the packet modification, it is the transmission control association at both ends.
- IP Internet Protocol
- TCP transmission control protocol
- the service processing node when the service processing node performs the packet modification: if the control signaling sent by the service processing node indicates that it is not required to be forwarded to the service The processing node, the above-mentioned 103B uses the high-speed channel to forward the data packet from the source end to the sink end.
- the method includes: if the data packet has been modified by the service processing node, the quintuple information and the data packet of the source end and the sink end are modified.
- the SEQ value and the ACK value use a high speed channel to forward data packets from the source to the sink.
- the specific modification is as follows: Assume that the added offset of the data packet is Payload-len, then the SEQ value of the data forwarding device sending the data packet to the sink is: SEQ + payload - len of the source end; data forwarding device to the source The ACK value of the data sent by the terminal is: ACK of the sink end - payload - len; This will be exemplified.
- sequence number of the data packet from the source end modified as described above includes:
- the service processing node determines whether to continue to use the low-speed channel for data forwarding, and then controls the data forwarding device to select the high-speed channel for data forwarding.
- the strategy of dynamically controlling data transmission is realized, and the method of forwarding policy control is flexible, and the application time is limited, which is advantageous for widespread use.
- the service processing node can send dynamic rules (control commands), and the data forwarding device Directly forward and forward subsequent uplink and downlink packets, Reduce the bandwidth requirements and processing pressure of the data forwarding device and Node;
- Single-channel service refers to the service in which the control flow and the data flow are the same link.
- protocol identification and service processing such as the Hypertext Transfer Protocol (HTTP) service
- HTTP Hypertext Transfer Protocol
- Node can send dynamics.
- the data forwarding device records the source end and the sink end. For example, the SEQ value and the ACK value of the uplink and downlink packet TCP are modified according to the offset generated by the modified packet, and then the route is forwarded.
- Multi-channel service refers to services whose control flow and data flow are not the same link; such as File Transfer Protocol (FTP), Session Initiated Protocol (SIP), Real-time streaming media transfer protocol (Real) Services such as -time Transport Streaming Protocol, RTSP are multi-channel services.
- FTP File Transfer Protocol
- SIP Session Initiated Protocol
- RTSP Real-time streaming media transfer protocol
- the control command can be issued by the service processing node during the system running (relative to the static configuration method preset when the system starts, the method belongs to the dynamic policy) , to achieve direct forwarding of data streams, thereby reducing the bandwidth requirements and processing pressure of data forwarding devices and Node.
- the embodiment of the present invention further provides another method for data forwarding, which is described by the main body as a service processing node. As shown in FIG. 2, the method includes:
- the service processing node receives the data packet sent by the data forwarding device from the source end by using the low speed channel;
- the service processing node performs protocol identification and processing on the data file, and determines whether the data packet sent by the source end needs to be processed by the service processing node;
- control command is used to indicate that the uplink data packet of the source end does not need to be forwarded to the service processing node, so that the data forwarding device uses the high-speed channel to collect data from the source end.
- the message is forwarded to the sink.
- the service processing node after the service processing node performs the service processing, it is determined whether to continue to use the low-speed channel for data forwarding, and then the data forwarding device is controlled to select the high-speed channel for data forwarding.
- the strategy of dynamically controlling data transmission is realized, the method of forwarding policy control is flexible, and the application time limit is small, which is beneficial to widespread use.
- the solution of the embodiment of the present invention can be designed based on the existing network traffic model.
- the data packets processed by the service processing node in the current network data account for 37% of the total data packet, and 63% of the data packets are in the protocol identification or After a simple packet is modified, it can be directly routed and forwarded.
- the subsequent uplink and downlink data packets are not It is necessary to go through the service processing node, and the message routing can be performed through the high-speed data forwarding device.
- the initial packet of the service flow on all the links is sent to the service processing node through the low-speed channel through the low-speed channel in the initial state, and the service processing node performs the service logic processing to judge the related service flow of the user. Whether to continue to send to Node for business processing.
- step 202 it is determined that the determination mode needs to be sent to the Node processing, and the subsequent processing of the data flow does not require the related processing of the service processing node according to the actual needs in the service processing.
- the streaming media has two parts: the RTSP control flow and the RTP data flow.
- the RTSP control flow first passes through the low-speed channel, and the service logic in the service processing node determines that the video is a match. After the charging/bandwidth control rule is issued, the subsequent RTP data stream can be directly released (that is, using a high-speed channel).
- TCP/UDP packets pass through the low-speed channel first. After the service processing node recognizes that it is a P2P protocol, the bandwidth control rule is obtained. The subsequent data stream can pass directly from the high-speed channel. After passing through the service processing node, only the bandwidth control policy interface needs to be executed.
- P2P point-to-point
- the Node After the service processing node determines that the service processing is not required, in step 203, the Node sends a control command to the data forwarding device, and carries related information, where the related information is used to identify that the subsequent uplink request and the downlink response do not need to be forwarded to the Node. ". In this way, the data forwarding device can directly forward the uplink and downlink packets.
- the processing logic supported by the data forwarding device in the foregoing embodiment shown in FIG. 1 and FIG. 2 includes: managing all uplink and downlink packets based on the connection;
- the embodiment of the present invention also provides a policy interface between the data forwarding device and the service processing node Node, as shown in Table 1:
- CID (Connection ID) connection ID; (CID is the logical ID of the quintuple) uplink_ms_seq Upstream terminal side SEQ value uplink_ms_ack Uplink terminal side ACK value uplink_ sp_seq Upstream SP side SEQ value uplink_sp_ack Up SP side ACK value uplink_offset Uplink offset downlink_ms_seq Downstream terminal side SEQ value downlink_ms_ack Downstream terminal side ACK value downlink_sp_seq Downstream SP side SEQ value downlink_ sp_ack Downstream SP side ACK
- the value of the downlink-offset-downward offset is also provided in the embodiment of the present invention, in the case that the packet is modified by the Node in the packet processing:
- the data forwarding device needs to record the SEQ value and ACK value of the network access server (NAS) side and the SP side, and the offset generated by the modification of the data packet, modify the SEQ value and the ACK value of the TCP, and then go up and down. Forwarding of the message.
- the data forwarding device only needs to modify the TCP SEQ/ACK value; in the scenario where the quintuple information connected between the source end and the sink end is changed, When TCP MSS is used at both ends, IP and Port replacement is required based on the modification of the TCP SEQ/ACK value.
- the WAPGW acts as an explicit proxy and acts as a gateway for terminal WAP service access. When interacting with the SP, it uses the WAPGW's IP and Port to interact with the SP.
- the data forwarding device is used as the load balancer, and the load balancer and the service processing node Node perform uplink and downlink data packets between the terminal and the SP.
- Load balancing distribution and business processing is: forwarding the uplink and downlink packets to the service processing node for processing, and the load balancer only selects and puts relevant routing policies after receiving the control command of the service processing node. Through processing operations.
- the routing policy specifically includes:
- the default policy is the non-pass-through processing (for the data packets to be forwarded by the low-speed channel): All the uplink and downlink data packets connected between the terminal and the SP are required to pass through the data forwarding device and the service processing node.
- User-level policies and/or connection-level policies are putative processing (using high-speed channels to forward data packets):
- the Node After performing protocol identification and packet processing, the Node forwards the current packet to the SP, and sends a control command to the SP.
- the control command is used to indicate subsequent uplink request and downlink response, and does not need to be forwarded to the Node.
- the data forwarding device can directly forward the packet. Up and down messages.
- the high-speed data forwarding device needs to record the sequence number on both sides of the NAS and the SP, and the offset of the packet modification, and modify the TCP packet sequence number to perform the uplink and downlink packets. Forward.
- the service processing node (SPU) is taken as an example.
- the data forwarding process includes:
- the service perform unit For the P2P service, after the service perform unit (SPU) performs the protocol identification, it is determined that the protocol is a P2P service, and the subsequent request/response does not need to continue to be sent to the SPU, and the SPU sends the control policy to the LC, and the SPU sends the control policy to the LC.
- the relevant parameters of the quintuple connection are sent to the LC, and the LC performs the release policy.
- the LC directly forwards the packet to the terminal/SP side. The message is not modified. It is not necessary to modify the data from the source to copy the SEQ value and ACK value of TCP.
- the SPU For the HTTP service: After the SPU performs the protocol identification, it determines that the protocol is the HTTP protocol, and matches the service rule according to the URL. It needs to add the pre-header, add the extended attribute to the HTTP request, and the subsequent message and the downlink response are not required.
- the SPU processes the packets directly from the LC.
- the SPU forwards all the service packets of the SPU to the LC after the HTTP header is added.
- the SPU sends a control command to the LC to deliver the parameters of the quintuple connection.
- the line card LC the LC executes the control command.
- the LC directly forwards the packet to the terminal/SP side.
- the uplink packet is modified, and the LC needs to be modified.
- the SPU service processing unit After the SPU service processing unit performs the protocol identification, it determines that the protocol is the RTSP protocol, and obtains the IP and Port information of the RTP data channel negotiated between the client/streaming server, because the RTP does not need these data messages. After the SPU processes, the SPU sends a control policy, and the IP and Port quintuple information of the corresponding RTP is sent to the LC, and the LC executes the release policy.
- the SEQ value of the data packet TCP from the source is modified.
- the end user sends a MMS request, and the user number attribute needs to be added to the HTTP header in the MMS request. Then, it is only necessary to pass the start message through the low-speed channel, increase the user number attribute, and then directly pass the high-speed channel for subsequent messages, but the TCP sent to the SP after the start message increases the user number attribute.
- the packet and the original TCP packet of the terminal are different.
- the SEQ value of the TCP needs to be longer, and the corresponding ACK value also changes. Therefore, the SEQ and ACK values in the TCP packet exchanged between the MS and the SP are required. modify.
- the SEQ and ACK values of TCP are modified in the process of data packet transmission with the LC as the data forwarding device as an example.
- the mobile subscriber (MS) sends the first request or data message to the LC:
- the first request is a multimedia message request: SEQ ACK LEN: 1 , 1 , 1460;
- the LC sends and forwards the first request or data packet to the SP;
- the service processing node SP is The Hypertext Transfer Protocol (HTTP) header of the MMS request adds the user directory (MDN) preamble information, and the length is 40 bytes (this increases the data payload of the data message);
- TCP ACK sent by the SP to the LC: 1 , 1501 , 0;
- the LC modifies the TCPACK value according to the offset generated by increasing the payload, and the modified TCP ACK value sent to the MS is: TCPACK: 1 , 1461, 0;
- the LC determines that the subsequent data message is directly released, and does not need to be sent to the service processing node; the LC performs the offset calculation to obtain: SEQ ACK LEN: 1501, 1 , 500 and sends it to the SP;
- the LC modifies the ACK value according to the offset of the payload, and sends a TCPACK: 1 , 1901 , 0 to
- the embodiment of the invention provides a data forwarding device in a communication system. As shown in FIG. 4, the method includes:
- a low-speed forwarding unit 401 configured to forward the data packet from the source end to the sink by using a low-speed channel
- the control command receiving unit 402 is configured to: forward the data packet from the source end to the sink end by using a low-speed channel, and receive a control command sent by the service processing node, where the control command is used to indicate that the data packet of the source end does not need to be forwarded to the The above business processing node;
- the high-speed forwarding unit 403 is configured to forward the data packet from the source end to the sink end by using the high-speed channel according to the indication of the foregoing control command.
- the foregoing apparatus further includes:
- a recording unit 501 configured to record quintuple information and data of the source end and the sink end, and the amount of offset of the tampering;
- the value modifying unit 502 is configured to modify the SEQ value and the ACK value of the data packet TCP from the source according to the quintuple information of the source end and the sink end and the offset of the data message modification;
- the high-speed forwarding unit 403 is configured to: after modifying the SEQ value and the ACK value of the data packet TCP from the source end, use the high-speed channel to forward the data packet from the source end according to the modified result. The end.
- the value modifying unit 502 is specifically configured to modify the data from the source end if the quintuple information has not changed. ⁇ SEQ value and ACK value;
- the embodiment of the present invention further provides a service processing node in a communication system, as shown in FIG. 6, including:
- a message receiving unit 601 configured to receive a data packet sent by the data forwarding device from the source end by using a low-speed channel
- the packet processing unit 602 performs protocol identification and packet processing on the data packet from the source end, and determines whether the data packet sent by the source end needs to be processed by the service processing node.
- the command sending unit 603 is configured to: if the message processing unit determines that the result is unnecessary, send a control command to the data forwarding device, where the control command is used to indicate that the uplink data packet of the source end does not need to be forwarded to the service processing node,
- the data forwarding device forwards the data packet sent by the source end to the sink end by using a high-speed channel.
- the embodiment of the present invention further provides a data forwarding system in a communication system, as shown in FIG. 7, including: a data forwarding device 701 and a service processing node 702, wherein the data forwarding device 701 is provided by any one of the embodiments of the present invention.
- the data forwarding device, the service processing section 702 is the service processing node provided by the embodiment of the present invention.
- the service processing node after the service processing node performs the service processing, it is determined whether to continue to use the low-speed channel for data forwarding, and then the data forwarding device is controlled to select the high-speed channel for data forwarding.
- the strategy of dynamically controlling data transmission is realized, the method of forwarding policy control is flexible, and the application time limit is small, which is beneficial to widespread use.
- the Node can send dynamic rules.
- the data forwarding device records the source and the sink, for example: network access server ( Network access server (NAS) and the TCP serial number of the link on both sides of the SP.
- the sequence number in the uplink and downlink packets is corrected according to the offset of the modified packet.
- NAS Network access server
- control traffic and data flow are not services of the same link
- the general data flow does not need to be processed by the service, and the data flow can be directly forwarded by issuing a dynamic policy, thereby reducing the data forwarding device and the Node. Bandwidth requirements and processing pressure.
- the data forwarding device, the service processing node, and the data forwarding system composed of the foregoing embodiments can be physically dispersed or centralized, and the modules in each device can also be set according to their functions. On one physical entity or multiple physical entities.
- the data forwarding device, the service processing node, and the data forwarding system composed of the foregoing embodiments can be physically dispersed or centralized, and the modules in each device can also be set according to their functions. On one physical entity or multiple physical entities.
- the above apparatus can implement the methods described in the above Figs. 1, 2, and 3 and the embodiments, and the working principle will not be described again.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Library & Information Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
一种通信***中的数据转发方法、 装置和*** 本申请要求于 2010 年 12 月 31 日提交中国专利局、 申请号为 201010619765. 5、 发明名称为"一种通信***中的数据转发方法、 装置和系 统"的中国专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域
本发明涉及通信技术领域, 特别涉及一种通信***中的数据转发方法、 装置和***。 背景技术
数据转发设备和业务处理节点进行报文分发处理时,请求报文和响应报 文需要两次经过数据转发设备。 这样增大了数据转发设备的带宽需求, 例如 如果客户端与服务器端的带宽要求 10G, 数据转发设备的带宽则需要 20G。 而在业务处理过程中, 对于某些业务流程而言, 终端上行请求在进行协议识 另' J/业务处理后,后续的上行报文以及下行报文不需要继续转发给业务处理节 点, 再由业务处理节点转送回来; 可以直接从数据转发设备转发给终端和服 务提供商 ( Service Provider, SP ) 的设备, 从而降低数据转发设备和业务处 理节点的带宽要求和处理压力。但是现有技术中通过配置静态策略进行数据 转发, 提前配置目的 IP、 Port规则, 将符合静态规则的上下行数据报文进行 直接路由放通(即采用高速通道进行数据转发), 转发策略控制的方式不够 灵活, 应用时限制多不利于广泛使用。 发明内容
本发明实施例要解决的技术问题是提供一种通信***中的数据转发方 法、 装置和***。
为解决上述技术问题, 本发明所提供的数据转发方法实施例可以通过以 下技术方案实现:
数据转发设备采用低速通道将来自源端的数据报文转发给宿端; 数据转发设备在采用低速通道将来自源端的数据报文转发给宿端的过 程中, 接收业务处理节点发送的控制命令, 所述控制命令用于指示所述源端
的数据报文不需要转发给业务处理节点;
数据转发设备根据所述控制命令的指示, 采用高速通道将来自源端的数 据报文转发给宿端。
一种数据转发的方法, 包括:
业务处理节点接收数据转发设备采用低速通道发送的来自源端的数据 报文;
业务处理节点对所述数据 >¾文进行协议识别和>¾文处理, 并判断所述源 端后续发送的数据报文是否需要业务处理节点进行处理;
若不需要, 则向所述数据转发设备发送控制命令, 指示所述源端的上行 数据报文不需要转发给业务处理节点,使数据转发设备采用高速通道将来自 源端的数据报文转发给宿端。
一种数据转发设备, 包括:
低速转发单元, 用于采用低速通道将来自源端的数据报文转发给宿端; 控制命令接收单元, 用于在采用低速通道将来自源端的数据报文转发给 宿端的过程中, 接收业务处理节点发送的控制命令, 所述控制命令用于指示 所述源端的数据报文不需要转发给业务处理节点;
高速转发单元, 用于根据所述控制命令的指示, 采用高速通道将来自源 端的数据报文转发给宿端。
一种业务处理节点, 包括:
报文接收单元, 用于接收数据转发设备采用低速通道发送的来自源端的 数据报文;
报文处理单元, 对所述来自源端的数据报文进行协议识别和报文处理, 并判断所述源端后续发送的数据报文是否需要业务处理节点进行处理; 命令发送单元, 用于若报文处理单元判断结果为不需要, 则向所述数据 转发设备发送控制命令, 指示所述源端的上行数据报文不需要转发给业务处 理节点,使数据转发设备采用高速通道将所述源端后续发送的数据报文转发 给宿端。
一种数据转发***, 包括: 本发明实施例提供的数据转发设备和业务处 理节点。
上述技术方案具有如下有益效果: 本发明实施例通过业务处理节点进行 业务处理后确定是否继续使用低速通道进行数据的转发, 然后控制数据转发 设备选择高速通道进行数据转发。 实现了动态控制数据发送的策略, 转发策 略控制的方式灵活, 应用时限制少利于广泛使用。 附图说明
为了更清楚地说明本发明实施例的技术方案, 下面将对实施例描述中所 需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发 明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的 前提下, 还可以根据这些附图获得其他的附图。
图 1 A为本发明实施例方法数据流向示意图;
图 1B为本发明实施例方法流程示意图;
图 2为本发明实施例方法流程示意图;
图 3为本发明实施例方法流程示意图;
图 4为本发明实施例装置结构示意图;
图 5为本发明实施例装置结构示意图;
图 6为本发明实施例装置结构示意图;
图 7为本发明实施例***结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而 不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作 出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例提供了一种数据转发方法, 如图 1A所示, 并可参见图 1B, 本方法的执行主体可以为数据转发设备, 例如负载均衡器(Load Balance, LB ), 线卡(Line Card, LC )等, 包括:
101B: 数据转发设备采用低速通道将来自源端的数据报文转发给宿端; 102B:上述数据转发设备采用低速通道将来自源端的数据报文转发给宿 端过程中, 接收业务处理节点发送的控制命令, 上述控制命令用于指示上述
源端的数据报文不需要转发给业务处理节点;
103B: 上述数据转发设备根据上述控制命令的指示, 采用高速通道将来 自源端的数据报文转发给宿端。
上述图 1B的方法在图 1A中示意为: 源端 101A将数据报文发送给数据转 发设备 102A, 数据转发设备 102A将接收到的数据报文转发给业务处理节点 103A, 如实线示意的单向箭头方向所示; 业务处理节点 103A向数据转发设 备 102A发送控制命令,如点状示意的单向箭头方向所示; 数据转发设备根据 控制命令的指示, 采用高速通道转发源端 101A和宿端 104A间的数据报文, 如双向箭头方向所示。
具体的, 上述具体实施方式中, 数据转发设备提供低速通道和高速通道 功能。 在低速通道, 数据包需要发送到业务处理节点, 由于业务处理节点针 对数据包进行协议识别, 报文修改等业务处理后, 再转发给数据转发设备, 再由数据转发设备向终端或 SP侧进行报文转发; 也就是说, 低速通道中, 上下行报文需要两次经过负载均衡器和业务处理节点。 具体的, 在前述低速 通道的流程中, 数据转发设备与业务处理节点间的数据流向为: 终端上行数 据报文由数据转发设备分发到业务处理节点; 业务处理节点进行业务处理 后, 将上行数据报文再发送给数据转发设备; 数据转发设备再发送给 SP/内 容提供商 ( Content Providert, CP )。 类似的, 下行数据报文的数据流向与上 行数据报文的数据报文的数据流向相对应, 可以简单描述为 "SP/CP 数 据转发设备 业务处理节点 数据转发设备 终端", 不再贅述。
在高速通道,数据包直接转发到下一跳网络设备,即,对于终端和 SP/CP 之间的上下行报文, 由数据转发设备直接进行报文的三、 四层的路由转发, 也就是说, 上述上下行 "¾文不经过业务处理节点处理。
以透明代理或侦听模式的业务场景为例, 现有技术中业务流的五元组 信息在数据转发设备处理后,与终端以及 SP/CP交互时五元组信息不能改变, 因此在组网和业务处理上,现有技术要求所有的上下行数据报文必须经过数 据转发设备和业务处理节点。上述五元组信息为:终端的互联网协议( Internet Protocol, IP )地址、 端口 (Port )、 SP对应的 IP地址、 端口 (Port )以及协议 类型。 更具体的, 业务处理节点在进行报文修改后, 由于是两端传输控制协
i L ( Transmission Control Protocol , TCP )参数不一致, 例如才艮文序号, 校马全 和等, 此时负载均衡器无法支持 TCP头的修改达到使后续上下行未修改的报 文无法直接路由的效果, 仍然必须经过业务处理节点中转。
然而,本具体实施方式中,对于上述透明代理以及侦听模式等业务场景, 当业务处理节点在进行报文修改的情况下: 如果业务处理节点发送的控制信 令指示不需要不需要转发给业务处理节点,上述 103B中采用高速通道将来自 源端的数据报文转发给宿端包括: 若数据报文已经被业务处理节点修改, 则 记录源端和宿端的五元组信息和数据报文修改的偏移量; 根据源端和宿端的 五元组信息和数据报文修改的偏移量修改来自源端的数据报文传输控制协 议序 TCP的偏移量 SEQ值和应答 ACK值, 依据修改后的 SEQ值和 ACK值采用 高速通道将来自源端的数据报文转发给宿端。 具体的修改方式为: 假设数据 报文的增加的偏移量为 Payload— len, 那么数据转发设备向宿端发送数据报文 的 SEQ值为: 源端的 SEQ + payload— len; 数据转发设备向源端发送数据 4艮文 的 ACK值为: 宿端的 ACK - payload— len; 将对此进行举例说明。
更具体地, 上述修改来自源端的数据报文的序号包括:
若五元组信息未变, 修改来自源端的数据报文的 TCP的 SEQ值和 ACK 值;
若五元组信息已经改变且源端和宿端的 TCP最大分段大小 ( Maximum Segment Size , MSS )相同, 根据偏移量修改来自源端的数据报文 TCP的 SEQ 值和 ACK值, 替换互联网协议 IP地址和端口 Port。
对于端口、序列号等的具体修改本发明实施例将在后续实施例中给出更 伴细的说明。
本发明实施例通过业务处理节点进行业务处理过程中确定是否继续使 用低速通道进行数据的转发, 然后控制数据转发设备选择高速通道进行数据 转发。 实现了动态控制数据发送的策略, 转发策略控制的方式灵活, 应用时 限制少, 利于广泛使用。
使用上述方法, 对于单通道业务, 在进行协议识别和业务处理后(例如 P2P业务), 仅需要修改部分应用层数据, 业务处理节点(Node )可下发动态 规则 (控制命令), 数据转发设备直接将后续上下行报文进行路由转发, 从
而降低数据转发设备和 Node的带宽要求和处理压力;
单通道业务是指控制流和数据流是相同链路的业务。 对于单通道业务, 在进行协议识别和业务处理后, 例如超文本传输协议 ( Hypertext Transfer Protocol, HTTP )业务,仅需要修改部分 4艮文,对于后续的上下行 4艮文, Node 可下发动态规则, 由数据转发设备记录源端和宿端, 例如: 根据报文被修改 产生的偏移量修改上下行报文 TCP的 SEQ值和 ACK值, 然后进行路由转发。
多通道业务是指控制流和数据流不是相同链路的业务; 如文件传送协议 ( File Transfer Protocol, FTP )、 起始会话十办议 ( Session Initiated Protocol, SIP )、 实时流媒体传输协议 ( Real-time Transport Streaming Protocol, RTSP ) 等业务都属于多通道业务。 对于多通道业务而言, 数据流是不需要进行业务 处理的, 可***运行期间由业务处理节点下发控制命令(相对于***启动时 就预设置的静态配置的方法, 该方法属于动态策略), 实现直接转发数据流, 从而降低数据转发设备和 Node的带宽要求和处理压力。
相应的, 本发明实施例还提供了另一种数据转发的方法, 以主体为业务 处理节点的角度进行描述, 如图 2所示, 包括:
201 : 业务处理节点接收数据转发设备采用低速通道发送的来自源端的 数据报文;
202: 业务处理节点对上述数据 文进行协议识别和 ^艮文处理, 并判断 上述源端后续发送的数据报文是否需要所述业务处理节点进行处理;
203 : 若不需要, 则向上述数据转发设备发送控制命令, 所述控制命令 用于指示上述源端的上行数据报文不需要转发给业务处理节点,使数据转发 设备采用高速通道将来自源端的数据报文转发给宿端。
本发明实施例通过业务处理节点进行业务处理后确定是否继续使用低 速通道进行数据的转发, 然后控制数据转发设备选择高速通道进行数据转 发。 实现了动态控制数据发送的策略, 转发策略控制的方式灵活, 应用时限 制少, 利于广泛使用。
本发明实施例的方案可以基于现网话务模型进行设计,现网数据中需要 业务处理节点处理的数据报文占整体数据报文的 37%, 而 63%的数据报文在 进行协议识别或简单报文修改后, 可直接路由转发, 后续上下行数据报文不
需要再经过业务处理节点, 而可以通过高速数据转发设备进行报文路由。 所有链接上的业务流的初始报文,初始状态下由支持高速数据转发的数 据转发设备通过低速通道, 发送给业务处理节点, 由业务处理节点进行业务 逻辑处理, 判断该用户的相关业务流后续是否继续发送给 Node进行业务处 理。
上述步骤 202中判断是否需要发送给 Node处理的判断方式可以根据业务 处理过程中的实际需要进行判断后续的数据流不需要业务处理节点的相关 处理。 首先, 以用户需要看一个流媒体视频为例, 流媒体有 RTSP控制流和 RTP数据流两个部分, RTSP控制流先经过低速通道, 由业务处理节点中的业 务逻辑判断是某个视频, 匹配出计费 /带宽控制规则后, 后续的 RTP数据流可 以直接放通(即采用高速通道) 即可。 另外, 以点对点 (P2P )协议为例: TCP/UDP报文先经过低速通道, 业务处理节点识别出是 P2P协议后, 得出带 宽控制规则, 后续的数据流可以直接从高速通道经过, 不需要再经过业务处 理节点, 只需要执行带宽控制策略接口。
当业务处理节点 Node判断不需要再进行业务处理后, 步骤 203中, Node 下发控制指令给数据转发设备, 携带相关信息, 该相关信息用于标识 "后续 上行请求和下行响应不需要转发给 Node"。 这样, 数据转发设备可以直接转 发上下行报文。
上述图 1以及图 2所示的实施例中的数据转发设备支持的处理逻辑包括: 基于连接进行管理所有上下行报文;
接受和执行基于连接表的放通 /不放通策略;
管理高速通道中的所有连接的 TCP报文的 SEQ/ACK值;
能够支持默认策略(即: 初始采用低速通道进行数据转发)、 用户级策 略和 /或连接级策略(即: 通过控制指令选择高速通道进行数据转发) 管理。
本发明实施例还给出了数据转发设备与业务处理节点 Node的策略接口, 如表 1所示:
表 1 接口说明 放通、 不放通策略通知
传入参数 策略类型 (放通、 不放通)
CID(Connection ID) 连接 ID; ( CID是五元组的逻辑 ID ) uplink— ms—seq 上行终端侧 SEQ值 uplink— ms—ack 上行终端侧 ACK值 uplink— sp—seq 上行 SP侧 SEQ值 uplink_sp_ack 上行 SP侧 ACK值 uplink— offset 上行偏移量 downlink— ms—seq下行终端侧 SEQ值 downlink— ms—ack下行终端侧 ACK值 downlink— sp—seq 下行 SP侧 SEQ值 downlink— sp—ack 下行 SP侧 ACK值 downlink— offset 下行偏移量 本发明实施例还给出了对于报文处理中,报文被 Node修改的情况下的处 理方式:
数据转发设备需要记录网络接入服务器(Network Access Server, NAS ) 侧和 SP侧的 SEQ值和 ACK值, 以及数据报文修改产生的偏移量, 修改 TCP的 SEQ值和 ACK值后进行上下行报文的转发。
具体的, 源端与宿端连接的五元组信息不改变的场景下, 数据转发设备 只需要修改 TCP SEQ/ACK值; 源端与宿端连接的五元组信息发生改变的场 景下, 对于两端 TCP MSS—致时, 在修改 TCP SEQ/ACK值的基础上, 还需 要进行 IP和 Port的替换。 例如: WAPGW作为显式代理, 作为终端 WAP业务 访问的网关, 与 SP交互时, 是使用 WAPGW的 IP和 Port与 SP交互。
以下将就透明代理场景下的业务处理为实施例进行说明, 本实施例以数 据转发设备为负载均衡器为例,负载均衡器和业务处理节点 Node进行终端和 SP之间上下行数据报文的负载均衡分发和业务处理。 本实施例中, 负载均衡 器的默认策略为: 将上下行报文转发给业务处理节点进行处理, 负载均衡器 只有接收到业务处理节点的控制命令后, 才进行相关的路由策略的选择和放 通处理操作。 其中路由策略具体包括:
默认策略为不放通处理 (采用低速通道转发数据报文 ): 终端侧和 SP侧 两端连接的所有上下行数据报文, 均需要经过数据转发设备和业务处理节 点;
用户级策略和 /或连接级策略为放通处理(采用高速通道转发数据报文):
Node进行协议识别和报文处理后, 转发当前报文给 SP, 并下发控制指令给 SP, 上述控制指令用于指示后续上行请求和下行响应, 不需要转发给 Node; 数据转发设备可直接转发上下行报文。对于报文处理中,报文被 Node修改的 情况下, 高速数据转发设备需要记录 NAS和 SP两侧的序号, 以及报文修改的 偏移量, 修改 TCP报文序号后进行上下行报文的转发。
在下面的实施方式中, 以业务处理节点 Node具体为业务处理单元 ( service perform unit, SPU )为例, 针对几种不同的具体业务, 数据转发的 过程包括:
对于 P2P业务: 当业务处理单元( service perform unit, SPU )进行协议 识别后, 判断该协议是 P2P业务, 后续的请求 /响应不需要继续发生给 SPU处 理, SPU下发控制策略给 LC, 将该五元组连接的相关参数下发给 LC, LC执 行该放通策略, 当该 TCP连接上后续上下行报文经过 LC时, 由 LC直接将报 文转发给终端 /SP侧; 此时上下行报文没有修改, 不需要修改来自源端的数 据才艮文 TCP的 SEQ值和 ACK值。
对于 HTTP业务: 当 SPU进行协议识别后, 判断该协议是 HTTP协议, 并 根据 URL匹配到业务规则, 需要进行增加前传头, 在 HTTP请求中添加扩展 属性, 请求的后续报文和下行响应不需要由 SPU处理, 由 LC直接进行报文路 由; SPU在添加 HTTP前传头后, 将 SPU侧所有业务报文转发给 LC后, 给 LC 下发控制命令, 将该五元组连接的相关参数下发给线卡 LC, LC执行该控制 命令, 当该 TCP连接上后续上下行报文经过 LC时, 由 LC直接将报文转发给 终端 /SP侧; 此时上行报文进行修改, LC需要修改来自源端的数据报文 TCP 的 SEQ值和 ACK值;保证终端与业务处理节点间连接以及业务处理节点与 SP 间连接可以在 LC上直接进行报文的 TCP SEQ/ACK修改后, 直接进行报文转 发。
对于 RTSP业务: 当 SPU业务处理单元进行协议识别后, 判断该协议是 RTSP协议,并且获取到客户端 /流媒体 Server间协商好的 RTP数据通道 IP、 Port 信息, 由于 RTP这些数据报文不需要 SPU处理, SPU下发控制策略, 将对应 的 RTP的 IP、 Port五元组信息下发给 LC, LC执行放通策略。
对于前述实施例中的所述修改来自源端的数据报文 TCP的 SEQ值和
ACK值, 下面进行举例说明:
例如: 终端用户发送一个彩信请求, 需要在这个彩信请求中的 HTTP头 中增加用户号码属性。 那么, 只需要将开始的报文经过低速通道, 增加用户 号码属性, 然后对于后续报文直接通过高速通道放通就可以了, 但是因为开 始的报文增加用户号码属性后, 发送给 SP的 TCP报文和终端原始的 TCP报文 是不相同的, TCP的 SEQ值需要变长了,相应的 ACK值也会发生变化; 因而, MS与 SP交互的 TCP报文中的 SEQ和 ACK值都需要修改。 TCP的 SEQ和 ACK 值在数据报文发送过程中的修改以 LC作为数据转发设备为实例,假设用户数 据的增加的偏移量为: Payload— len; 那么 LC向 SP发送数据报文的 SEQ值为: MS的 SEQ + payload— len; LC向 MS发送数据报文的 ACK值为: SP的 ACK - payloadjen; 具体举例, :¾口图 3所示:
301 : 移动用户 (mobile subscriber, MS ) 向 LC发送第一个请求或数据 报文: 例如第一个请求为彩信请求: SEQ ACK LEN: 1 , 1 , 1460;
302: LC向 SP发送转发上述第一个请求或数据报文; 业务处理节点 SP在
彩信请求的超文本传输协议 ( Hypertext Transfer Protocol, HTTP ) 头中增加 用户号码( Mobile Directory Number, MDN )前传信息, 长度为 40个字节(这 样就增加了数据报文的数据净荷); 此时 SP发送给 LC的 TCPACK: 1 , 1501 , 0;
303: LC根据增加净荷产生的偏移量修改 TCPACK值,修改后发送给 MS 的 TCP ACK值为: TCPACK: 1 , 1461 , 0;
304: MS向 LC发送第二个请求或数据报文; SEQ ACK LAN: 1461 , 1 ,
500;
305: LC确定后续的数据报文直接放通, 不需要再发送给业务处理节点; LC进行偏移量的计算, 得到: SEQ ACK LEN: 1501 , 1 , 500并发送给 SP;
306: SP返回 TCPACK: 1 , 2101 , 0;
307: LC根据净荷的偏移量修改 ACK值, 发送 TCPACK: 1 , 1901 , 0给
MS。
本发明实施例提供了一种通信***中的数据转发设备, 如图 4所示, 包 括:
低速转发单元 401 , 用于采用低速通道将来自源端的数据报文转发给宿 端;
控制命令接收单元 402, 用于采用低速通道将来自源端的数据报文转发 给宿端过程中, 接收业务处理节点发送的控制命令, 上述控制命令用于指示 上述源端的数据报文不需要转发给上述业务处理节点;
高速转发单元 403 , 用于根据上述控制命令的指示, 采用高速通道将来 自源端的数据报文转发给宿端。
进一步地, 如图 5所示, 上述设备还包括:
记录单元 501 , 用于记录源端和宿端的五元组信息和数据 4艮文^(|爹改的偏 移量;
值修改单元 502, 用于根据源端和宿端的五元组信息和数据报文修改的 偏移量修改来自源端的数据报文 TCP的 SEQ值和 ACK值;
上述高速转发单元 403 ,用于在修改来自源端的数据报文 TCP的 SEQ值和 ACK值结束后依据修改的结果采用高速通道将来自源端的数据报文转发给
宿端。
可选地, 上述值修改单元 502, 具体用于若五元组信息未变, 修改来自 源端的数据 ^艮文!^卩的 SEQ值和 ACK值;
若五元组信息已经改变且源端和宿端的 TCP最大分段大小 MSS相同, 修 改来自源端的数据报文 TCP的 SEQ值和 ACK值, 替换互联网协议 IP地址和 Port端口。
本发明实施例还提供了一种通信***中的业务处理节点, 如图 6所示, 包括:
报文接收单元 601 , 用于接收数据转发设备采用低速通道发送的来自源 端的数据报文;
报文处理单元 602, 对上述来自源端的数据报文进行协议识别和报文处 理, 并判断上述源端后续发送的数据报文是否需要上述业务处理节点进行处 理;
命令发送单元 603 , 用于若报文处理单元判断结果为不需要, 则向上述 数据转发设备发送控制命令, 所述控制命令用于指示上述源端的上行数据报 文不需要转发给业务处理节点,使数据转发设备采用高速通道将上述源端后 续发送的数据报文转发给宿端。
本发明实施例还提供了一种通信***中的数据转发***, 如图 7所示, 包括: 数据转发设备 701和业务处理节点 702, 其中数据转发设备 701本发明 实施例提供的任意一项的数据转发设备, 业务处理节 702点为本发明实施例 提供的业务处理节点。
本发明实施例通过业务处理节点进行业务处理后确定是否继续使用低 速通道进行数据的转发, 然后控制数据转发设备选择高速通道进行数据转 发。 实现了动态控制数据发送的策略, 转发策略控制的方式灵活, 应用时限 制少, 利于广泛使用。
使用上述装置和***, 对于单通道业务, 在进行协议识别和业务处理后 (例如 P2P业务), 不需要修改报文, 业务处理节点(Node )可下发动态规则 (控制命令), 数据转发设备直接将后续上下行报文进行路由转发, 从而降 低数据转发设备和 Node的带宽要求和处理压力;
对于单通道业务, 在进行协议识别和业务处理后, 例如超文本传输协议
( Hypertext Transfer Protocol, HTTP )业务, 仅需要修改部分 4艮文, 对于后 续的上下行报文, Node可下发动态规则, 由数据转发设备记录源端和宿端, 例如: 网络接入服务器(Network Access Server, NAS )和 SP两侧链路的 TCP 序号, 根据报文修改的偏移量, 将上下行报文中的序号进行修正后进行路由 转发;
对于多通道业务而言 (控制流和数据流不是相同链路的业务), 一般数 据流是不需要进行业务处理的, 可通过下发动态策略, 直接转发数据流, 从 而降低数据转发设备和 Node的带宽要求和处理压力。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步 骤是可以通过程序来指令相关的硬件完成, 上述的程序可以存储于一种计算 机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域普通技术人员可以理解上述各实施例中的数据转发设备、 业务处 理节点以及尤其组成的数据转发***, 可以在物理上进行合理的分散或者集 中,各装置中的模块也可以根据其功能设置在一个物理实体或者多个物理实 体上。
本领域普通技术人员可以理解上述各实施例中的数据转发设备、 业务处 理节点以及尤其组成的数据转发***, 可以在物理上进行合理的分散或者集 中,各装置中的模块也可以根据其功能设置在一个物理实体或者多个物理实 体上。 上述装置可以实施前述图 1、 2、 3所示及实施例记载的方法, 其工作 原理不再贅述。
以上对本发明实施例所提供的一种数据转发方法、装置和***进行了详 上实施例的说明只是用于帮助理解本发明的方法、及装置和***及其核心思 想; 同时, 对于本领域的一般技术人员, 依据本发明的思想, 在具体实施方 式及应用范围上均会有改变之处, 综上, 本说明书内容不应理解为对本发明 的限制。
Claims
1、 一种通信***中的数据转发方法, 其特征在于, 包括:
数据转发设备采用低速通道将来自源端的数据报文转发给宿端; 所述数据转发设备在采用低速通道将来自源端的数据报文转发给宿端 的过程中, 接收业务处理节点发送的控制命令, 所述控制命令用于指示所述 源端的数据报文不需要转发给所述业务处理节点;
所述数据转发设备根据所述控制命令的指示, 采用高速通道将来自源端 的数据报文转发给宿端。
2、 根据权利要求 1所述方法, 其特征在于, 所述采用高速通道将来自 源端的数据报文转发给宿端包括:
若数据报文已经被业务处理节点修改, 则记录源端和宿端的五元组信息 和数据报文修改的偏移量; 根据源端和宿端的五元组信息和数据报文修改的 偏移量修改来自源端的数据报文传输控制协议序 TCP的偏移量 SEQ值和应答 ACK值,依据修改后的 SEQ值和 ACK值采用高速通道将来自源端的数据报文 转发给宿端。
3、 根据权利要求 2所述方法, 其特征在于, 所述修改来自源端的数据报 文 TCP的 SEQ值和 ACK值包括:
若五元组信息未变, 修改来自源端的数据报文 TCP的 SEQ值和 ACK值; 若五元组信息已经改变且源端和宿端的 TCP最大分段大小 MSS相同, 修 改来自源端的数据报文 TCP的 SEQ值和 ACK值, 替换互联网协议 IP地址和端 口 Port。
4、 一种通信***中的数据转发的方法, 其特征在于, 包括:
业务处理节点接收数据转发设备采用低速通道发送的来自源端的数据 报文;
所述业务处理节点对所述数据报文进行协议识别和报文处理, 并判断所 述源端后续发送的数据报文是否需要所述业务处理节点进行处理;
若不需要, 则向所述数据转发设备发送控制命令, 所述控制命令用于指 示所述源端的上行数据报文不需要转发给所述业务处理节点,使所述数据转 发设备采用高速通道将来自源端的数据报文转发给宿端。
5、 一种通信***中的数据转发设备, 其特征在于, 包括: 低速转发单元, 用于采用低速通道将来自源端的数据报文转发给宿端; 控制命令接收单元, 用于在采用低速通道将来自源端的数据报文转发给 宿端的过程中, 接收业务处理节点发送的控制命令, 所述控制命令用于指示 所述源端的数据报文不需要转发给所述业务处理节点;
高速转发单元, 用于根据所述控制命令的指示, 采用高速通道将来自源 端的数据报文转发给宿端。
6、 根据权利要求 5所述设备, 其特征在于, 还包括:
记录单元, 用于记录源端和宿端的五元组信息和数据报文修改的偏移 量;
值修改单元, 用于根据源端和宿端的五元组信息和数据报文修改的偏移 量修改来自源端的数据报文 TCP的 SEQ值和 ACK值;
所述高数转发单元, 用于依据修改后的 SEQ值和 ACK值采用高速通道将 来自源端的数据报文转发给宿端。
7、 根据权利要求 6所述设备, 其特征在于,
所述值修改单元, 具体用于若五元组信息未变, 修改来自源端的数据报 文 TCP的 SEQ值和 ACK值; 若五元组信息已经改变且源端和宿端的 TCP最大 分段大小 MSS相同, 修改来自源端的数据报文 TCP的 SEQ值和 ACK值, 替换 互联网协议 IP地址和 Port端口。
8、 一种通信***中的业务处理节点, 其特征在于, 包括:
报文接收单元, 用于接收数据转发设备采用低速通道发送的来自源端的 数据报文;
报文处理单元, 对所述来自源端的数据报文进行协议识别和报文处理, 并判断所述源端后续发送的数据报文是否需要所述业务处理节点进行处理; 命令发送单元, 用于若报文处理单元判断结果为不需要, 则向所述数据 转发设备发送控制命令, 所述控制命令用于指示所述源端的上行数据报文不 需要转发给业务处理节点,使数据转发设备采用高速通道将所述源端后续发 送的数据报文转发给宿端。
9、 一种通信***中的数据转发***, 包括: 数据转发设备和业务处理 节点, 其特征在于, 数据转发设备为权利要求 5至 7任意一项所述的数据转 发设备, 业务处理节点为权利要求 8所述的业务处理节点。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013103496/08A RU2560819C2 (ru) | 2010-12-31 | 2011-12-16 | Способ, устройство и система для перенаправления данных в системе связи |
EP11852840.5A EP2629466B1 (en) | 2010-12-31 | 2011-12-16 | Method, device and system for forwarding data in communication system |
US13/928,906 US9100279B2 (en) | 2010-12-31 | 2013-06-27 | Method, apparatus, and system for forwarding data in communications system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010619765.5A CN102137005B (zh) | 2010-12-31 | 2010-12-31 | 一种通信***中的数据转发方法、装置和*** |
CN201010619765.5 | 2010-12-31 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/928,906 Continuation US9100279B2 (en) | 2010-12-31 | 2013-06-27 | Method, apparatus, and system for forwarding data in communications system |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012089037A1 true WO2012089037A1 (zh) | 2012-07-05 |
Family
ID=44296664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2011/084129 WO2012089037A1 (zh) | 2010-12-31 | 2011-12-16 | 一种通信***中的数据转发方法、装置和*** |
Country Status (5)
Country | Link |
---|---|
US (1) | US9100279B2 (zh) |
EP (1) | EP2629466B1 (zh) |
CN (1) | CN102137005B (zh) |
RU (1) | RU2560819C2 (zh) |
WO (1) | WO2012089037A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102137005B (zh) * | 2010-12-31 | 2014-04-02 | 华为技术有限公司 | 一种通信***中的数据转发方法、装置和*** |
US9584179B2 (en) * | 2012-02-23 | 2017-02-28 | Silver Spring Networks, Inc. | System and method for multi-channel frequency hopping spread spectrum communication |
CN102938782B (zh) * | 2012-10-30 | 2015-08-12 | 中兴通讯股份有限公司 | 一种报文处理方法、装置和*** |
CN103078869B (zh) * | 2013-01-16 | 2016-05-25 | 华为技术有限公司 | 一种加速会话转发的***及其方法 |
CN104283817B (zh) * | 2013-07-03 | 2017-10-27 | 新华三技术有限公司 | 用于实现交换线卡与逻辑线卡互通的方法及报文转发设备 |
CN104735025B (zh) * | 2013-12-18 | 2018-01-09 | 国家计算机网络与信息安全管理中心 | 一种数据标识方法及其对应装置 |
CN105099992B (zh) * | 2014-04-29 | 2018-07-24 | 杭州迪普科技股份有限公司 | 一种报文修改装置及方法 |
US9710629B2 (en) | 2014-05-13 | 2017-07-18 | Google Technology Holdings LLC | Electronic device with method for controlling access to same |
CN105721432B (zh) * | 2016-01-15 | 2019-08-30 | 国家电网公司 | 一种面向电力iec104规约的tcp透明代理实现方法 |
CN107231567B (zh) * | 2016-03-25 | 2020-10-23 | 华为技术有限公司 | 一种报文传输方法、装置及*** |
CN105812276B (zh) * | 2016-04-27 | 2023-11-10 | 深圳市风云实业有限公司 | 采用多核处理器的报文转发自适应***和方法 |
CN107493242B (zh) * | 2016-06-12 | 2022-01-25 | 中兴通讯股份有限公司 | 一种数据报文转发方法、数据转发装置及通信*** |
US10798159B2 (en) * | 2017-07-26 | 2020-10-06 | Netapp, Inc. | Methods for managing workload throughput in a storage system and devices thereof |
CN109089334B (zh) * | 2018-09-26 | 2021-10-22 | 东南(福建)汽车工业有限公司 | 车载网关控制器信号路由校验方法 |
KR102632299B1 (ko) | 2019-03-05 | 2024-02-02 | 삼성전자주식회사 | 블루투스 네트워크 환경에서 응답 메시지를 전송하기 위한 전자 장치 및 그에 관한 방법 |
CN113037624A (zh) * | 2019-12-25 | 2021-06-25 | 华为技术有限公司 | 一种数据流控制的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1578320A (zh) * | 2003-06-30 | 2005-02-09 | 微软公司 | 利用主机状态信息进行网络负载平衡 |
CN101325552A (zh) * | 2008-08-01 | 2008-12-17 | 杭州华三通信技术有限公司 | 访问请求的三角转发方法和glb服务器 |
WO2010061573A1 (ja) * | 2008-11-28 | 2010-06-03 | パナソニック株式会社 | 経路制御装置、方法、およびプログラム |
CN102137005A (zh) * | 2010-12-31 | 2011-07-27 | 华为技术有限公司 | 一种通信***中的数据转发方法、装置和*** |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4481517B2 (ja) * | 2001-03-19 | 2010-06-16 | 株式会社日立製作所 | インターネットワーク装置及びインターネットワーク方法 |
JPH09510596A (ja) * | 1994-06-08 | 1997-10-21 | エイチイー・ホールディングス・インコーポレーテッド・ディー ビーエー・ヒューズ・エレクトロニクス | ハイブリッドネットワークアクセスのための装置および方法 |
US6687222B1 (en) * | 1999-07-02 | 2004-02-03 | Cisco Technology, Inc. | Backup service managers for providing reliable network services in a distributed environment |
FI20010511A0 (fi) * | 2001-03-14 | 2001-03-14 | Stonesoft Oy | Datapakettien käsittely |
US7277963B2 (en) * | 2002-06-26 | 2007-10-02 | Sandvine Incorporated | TCP proxy providing application layer modifications |
JP3643827B2 (ja) * | 2002-12-17 | 2005-04-27 | 株式会社半導体理工学研究センター | ルータ装置とその出力ポート回路及びその制御方法 |
US7921285B2 (en) * | 2002-12-27 | 2011-04-05 | Verizon Corporate Services Group Inc. | Means of mitigating denial of service attacks on IP fragmentation in high performance IPsec gateways |
RU31085U1 (ru) * | 2003-03-14 | 2003-07-10 | Закрытое акционерное общество "Московский телепорт" | Маршрутизатор передачи данных MSR-8000 |
US7826487B1 (en) * | 2005-05-09 | 2010-11-02 | F5 Network, Inc | Coalescing acknowledgement responses to improve network communications |
US20070230461A1 (en) * | 2006-03-29 | 2007-10-04 | Samsung Electronics Co., Ltd. | Method and system for video data packetization for transmission over wireless channels |
US20080130561A1 (en) * | 2006-12-04 | 2008-06-05 | Samsung Electronics Co., Ltd. | System and method for wireless communication |
US8004983B2 (en) * | 2007-08-15 | 2011-08-23 | Blue Coat Systems, Inc. | Methods to improve transmission control protocol (TCP) performance over large bandwidth long delay links |
-
2010
- 2010-12-31 CN CN201010619765.5A patent/CN102137005B/zh not_active Expired - Fee Related
-
2011
- 2011-12-16 RU RU2013103496/08A patent/RU2560819C2/ru not_active IP Right Cessation
- 2011-12-16 EP EP11852840.5A patent/EP2629466B1/en not_active Not-in-force
- 2011-12-16 WO PCT/CN2011/084129 patent/WO2012089037A1/zh active Application Filing
-
2013
- 2013-06-27 US US13/928,906 patent/US9100279B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1578320A (zh) * | 2003-06-30 | 2005-02-09 | 微软公司 | 利用主机状态信息进行网络负载平衡 |
CN101325552A (zh) * | 2008-08-01 | 2008-12-17 | 杭州华三通信技术有限公司 | 访问请求的三角转发方法和glb服务器 |
WO2010061573A1 (ja) * | 2008-11-28 | 2010-06-03 | パナソニック株式会社 | 経路制御装置、方法、およびプログラム |
CN102137005A (zh) * | 2010-12-31 | 2011-07-27 | 华为技术有限公司 | 一种通信***中的数据转发方法、装置和*** |
Non-Patent Citations (1)
Title |
---|
See also references of EP2629466A4 * |
Also Published As
Publication number | Publication date |
---|---|
RU2013103496A (ru) | 2014-07-27 |
US20130287031A1 (en) | 2013-10-31 |
US9100279B2 (en) | 2015-08-04 |
CN102137005B (zh) | 2014-04-02 |
RU2560819C2 (ru) | 2015-08-20 |
EP2629466B1 (en) | 2019-07-24 |
EP2629466A1 (en) | 2013-08-21 |
EP2629466A4 (en) | 2014-01-08 |
CN102137005A (zh) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2012089037A1 (zh) | 一种通信***中的数据转发方法、装置和*** | |
RU2407196C2 (ru) | Способ и устройство для поддержки службы прозрачного прокси-сервера в шлюзе беспроводного доступа и система, снабженная таким шлюзом | |
US7277455B2 (en) | Packet flow processing in a communication system | |
CA2604234C (en) | Method for managing service bindings over an access domain and nodes therefor | |
US8077619B2 (en) | Method for aggregating data traffic over an access domain and nodes therefor | |
US8301744B2 (en) | Systems and methods for QoS provisioning and assurance for point-to-point SIP sessions in DiffServ-enabled MPLS networks | |
JP4454072B2 (ja) | IP通信ネットワークシステム及びQoS保証装置 | |
WO2012083736A1 (zh) | 业务的分流处理方法、通信设备及网络*** | |
WO2010088831A1 (zh) | 基于多载波的反向功率控制方法 | |
US20120077483A1 (en) | Enabling interface aggregation of mobile broadband network interfaces | |
WO2009039754A1 (fr) | Procédé, passerelle multimédia et système pour commander un transport de paquets de données redondantes | |
US20030048751A1 (en) | Dual mode service platform within network communication system | |
WO2013181940A1 (zh) | 一种数据流调度的方法、设备和*** | |
JP2006033818A (ja) | ストリーミングトラフィックのための伝送リンクを提供する方法およびシステム | |
US20120166659A1 (en) | Node and Method for Quality of Service (QoS) Control | |
EP2989800A1 (en) | Data communication system and method | |
WO2017219813A1 (zh) | 一种流量处理方法及透明缓存*** | |
JP2009518760A (ja) | デジタル・コンテンツの伝送のためのサービス品質 | |
WO2012167546A1 (zh) | 业务分发控制方法和设备 | |
CN104660550B (zh) | 一种在多服务器之间进行会话迁移的方法 | |
EP4011044A1 (en) | Technique for controlling and performing data traffic handling in a core network domain | |
WO2007019777A1 (fr) | Méthode d’établissement de session et nœud de contrôle de session | |
US7933257B2 (en) | Using QoS tunnels for TCP latency optimization | |
JP2023033600A (ja) | コンテンツ配信システム、ユニキャストマルチキャスト変換装置、コンテンツ配信方法及びコンテンツ配信プログラム | |
CN102263808B (zh) | 一种会话控制服务方法、装置和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11852840 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2013103496 Country of ref document: RU Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011852840 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |