CN101072224A - Method for realizing data sending based on binding link - Google Patents

Method for realizing data sending based on binding link Download PDF

Info

Publication number
CN101072224A
CN101072224A CN200610078081.2A CN200610078081A CN101072224A CN 101072224 A CN101072224 A CN 101072224A CN 200610078081 A CN200610078081 A CN 200610078081A CN 101072224 A CN101072224 A CN 101072224A
Authority
CN
China
Prior art keywords
sublink
packet
transmit status
status table
binding link
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
Application number
CN200610078081.2A
Other languages
Chinese (zh)
Other versions
CN100589477C (en
Inventor
王飞祥
周志雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhao Yankun
Original Assignee
ZTE Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN200610078081A priority Critical patent/CN100589477C/en
Publication of CN101072224A publication Critical patent/CN101072224A/en
Application granted granted Critical
Publication of CN100589477C publication Critical patent/CN100589477C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Especially, the method is suitable to communication nodes of using multilink binding technique to send data in communication domain. The invention includes procedures: using transmission dispatch thread determines that data packet is fetched from which Bundle queues; transmission dispatch thread provides status of sub link, and sends data; using sub link send state table (SST) as intermediate layer stores current sending information of each sub link. The method gives same sending opportunity for each sub link. Link with large/small bandwidth uses sending opportunity with large/small proportion. Thus, it is not needed to care of bandwidth magnitude of each link, as well as bandwidth change caused by changing configuration. Thus, the method is simple and easy of implementation. In addition, using SST to store send state of each sub link, the invention prevents jam of a sub link to cause reduction of sending efficiency of whole communication nodes.

Description

A kind of method that realizes the data transmission based on binding link
Technical field
The present invention relates to send the method that belongs to same logical links data on multilink, specifically is a kind of method that sends based on binding link realization data, is specially adapted to use in the communication field multilink bundle technology to carry out the communication node that data send.
Background technology
When having multilink between communication node, be the unified bandwidth of using these links, can adopt MP (Multilink-PPP, RFC1990) agreement bundles multilink as a Bundle (binding link), at this moment just have only a link for what upper layer application was seen, can effectively utilize the bandwidth of all links between node like this.
In wireless network, the physical connection between BTS (base station transceiver) and the BSC (base station controller) generally can be used many E1 lines, and the bandwidth of each E1 line is divided equally by 32 transmission time slots.Upper-layer service module among BTS or the BSC can be according to some principle, require or distinguishing signaling/Media Stream such as Qos, select to use some Bundle to transmit data, a Bundle is formed by many HDLC multilink bundlings, and a HDLC link may comprise 1~32 time slot; By the member in the corresponding sublink set of System Management Daemon additions and deletions Bundle, also can change the corresponding number of time slots of every HDLC link, so the bandwidth of each Bundle and HDLC all can dynamic-configuration.
The corresponding Bundle transmit queue of each Bundle, the upper-layer service module is joined the team the MP fragment packets that all need send in order on same Bundle, send scheduler module and from formation, get bag, the a certain HDLC that selects the corresponding sublink of Bundle to concentrate gives this HDLC with packet and sends.Because the bandwidth of each bar HDLC may be different, therefore sending scheduler module need be with reference to the amount of bandwidth of each bar HDLC, and the reasonable distribution packet is to each bar HDLC link, to guarantee that some HDLC not occurring overflows and the situation of some HDLC free time.
A kind of dispatching method that the transmission scheduler module can be taked is: every HDLC has an independent transmit queue, the principle of dispatching method is, the ratio of the data volume in each HDLC transmit queue of joining the team in the unit interval should so just can reach the purpose that justice is utilized every HDLC transmitting capacity as much as possible near the HDLC bandwidth ratio.
The method that this selection sends HDLC has following shortcoming:
One, must have timer to locate the unit interval, with the transmission statistical value zero clearing of each bar HDLC, for the multilink sending module of being realized by network processing unit or FPGA, timer is difficult for obtaining behind the timer expiry;
If two HDLC quantity are more, the management of HDLC transmit queue will consume a large amount of memory headrooms;
Three, every HDLC time slot corresponding can dynamically be adjusted, therefore the bandwidth ratio between sublink collection member that Bundle comprised might change, after changing generation, send scheduler module and need compare the HDLC bandwidth ratio again and send statistical value, method complexity.
Send scheduler module and can also adopt the simple relatively method of another kind: after from a certain Bundle transmit queue, getting the MP fragment packets, look into Bundle and HDLC correspondence table, obtain all HDLC of this Bundle correspondence, send the link condition that scheduler module is inquired about these HDLC successively, if find certain bar HDLC free time, just select this HDLC to send.
The shortcoming of this method is, when the transmission scheduler module is taken out the MP fragment packets from the Bundle transmit queue after, if previous moment has of short duration bursty data, all HDLC links of Bundle correspondence just might all be in busy condition so at this moment, and three kinds for the treatment of methods are arranged this moment:
1, data packet discarding, the Bundle transmit queue does not just play the effect of buffering like this;
2, the MP fragment packets is joined the team again, be placed on tail of the queue, because the MP agreement is at receiving terminal group bag, so the change of MP fragment packets position in formation will cause that the recipient organizes time delay bigger when wrapping according to the sequence number in the MP fragment packets;
3, all HDLC Link States of this Bundle of poll always, till a HDLC link idle is arranged, the shortcoming of doing like this is to send scheduler module can't be other Bundle transmit queue service during this period, even the HDLC link of other Bundle correspondence is in idle condition.
Summary of the invention
The objective of the invention is aspect the multilink transmission technology, provide a kind of and realize the method that data send based on binding link, overcome the various shortcoming of the above-mentioned sending method that exists in the prior art, it is simple to reach method, is easy to realize that justice is purpose efficiently.
The data transmission method for uplink that the present invention proposes, main design are to use and send scheduling thread judgement data fetch packet from which Bundle formation; Sending execution thread provides the sublink situation and sends data; Use sublink transmit status table as the intermediate layer, store the current transmission information of every sub-links.
The present invention specifically is achieved in that
A kind of method that sends based on binding link realization data comprises:
Set up the binding link transmit queue, the corresponding transmit queue of each binding link;
It is characterized in that, also comprise following processing:
Set up sublink transmit status table, the corresponding list item of a sub-links, all list items are according to the sublink sequence arrangement;
The hardware of setting up sublink sends buffer memory, and described hardware sends the byte number of buffer memory and fixes;
Set up and send scheduling thread, select from the transmit queue of which binding link, to get bag according to sublink transmit status table;
Set up to send execution thread, the sublink situation of all configurations of circular test, and copy packet content to hardware and send in the buffer memory.
Described transmission scheduling thread is carried out following processing:
Every sub-links corresponding states in step 1, the cycle detection sublink transmit status table finds an available sublink;
Step 2, according to the corresponding relation of sublink and binding link, obtain the binding link number of this sublink correspondence, and data fetch packet in the binding link transmit queue of sublink correspondence from then on;
Step 3 and deposit packet information in sublink transmit status table, it is unavailable revising this sublink transmit status;
The state of next sublink in the sublink transmit status table is checked in step 4, continuation.
Described transmission execution thread is carried out following processing:
Each list item in step 1, the cycle detection sublink transmit status table is up to finding a sub-links to have packet etc. to be sent;
Step 2, check that this sublink is whether idle, if not, then return step 1;
Step 3, copy the packet content of indicating in the sublink transmit status table to hardware and send buffer memory, notice hardware sends;
Step 4, remove packet information in the corresponding list item of this sublink, change this sublink into upstate;
Next list item in the sublink transmit status table is checked in step 5, continuation.
Each list item in the described sublink transmit status table comprises:
The field whether sublink is configured to use;
Whether sublink is in the field of waiting for transmit status;
Current data packet has sent the field of byte number;
Current data packet remains the field of byte number to be sent;
Point to the field of storage packet content internal memory to be sent.
If the data packet length in the binding link transmit queue all sends buffer memory less than hardware, the current data packet in the omission list item has sent byte number and current data packet remains byte number field to be sent, increases the physical length that a field list shows packet;
Described transmission scheduling thread is inserted sublink transmit status table with data packet length;
Described transmission execution thread directly copies whole packet content to hardware and sends buffer memory when handling each list item.
The data transmission method for uplink that the present invention proposes is given the send opportunity of every sub-links as much, the send opportunity of ratio use to(for) the big link of bandwidth more greatly, the link that bandwidth is little uses the ratio of send opportunity littler, so just do not need to be concerned about that the size of every link bandwidth and the bandwidth of bringing because of configuration change change, method simply is easy to realize; Use the transmit status table to store the transmit status of every sub-links in addition, can avoid certain sub-links to stop up and cause the situation that whole communication node transmitting efficiency descends.
Description of drawings
Fig. 1 is an each several part graph of a relation in the embodiment of the invention;
Fig. 2 sends the scheduling thread process chart in the embodiment of the invention;
Fig. 3 sends the execution thread process chart in the embodiment of the invention.
Embodiment
The present invention is described in further detail below in conjunction with drawings and Examples.
One embodiment of the present of invention are the MP sending modules that are applied in the Abis interface plate of BTS, this module uses the network processing unit of Intel as the hardware implementation platform, support 48 Bundle/128 bar HDLC/48 bar E1 at most, each Bundle can be made up of 1~128 HDLC binding.
Fig. 1 has described the relation between the each several part in the embodiment of the invention:
(1) Bundle transmit queue, the corresponding transmit queue of each Bundle;
(2) HDLC transmit status table,, the corresponding list item of HDLC, the list item number is the communication node maximum HDLC number that can dispose for this reason, all list items are according to the HDLC sequence arrangement, each list item comprises five field: Using and represents whether this HDLC is configured to use, Waiting represents whether this HDLC state to be sent such as is in, Sended represents that current data packet has sent byte number, Left represents that current data packet remains byte number to be sent, and Buffer_pointer represents to point to the internal memory of storage packet content to be sent;
(3) MSF TBUF sends cache size and fixes for the HDLC that network processing unit provides sends buffer memory, is assumed to be the t byte;
(4) send scheduling thread, it selects to get bag from which Bundle transmit queue according to HDLC transmit status table;
(5) send execution thread, the HDLC link condition of its all configuration of circular test, and copy packet content to MSF and send in the buffer memory.
Send each list item of scheduling thread circular test HDLC transmit status table, handling process such as Fig. 2 of each list item described:
The first step is checked the Using field, if this HDLC is not configured to use, turns to next list item to handle;
Second step, check the Waiting field, if this HDLC is in the wait transmit status, turn to next list item to handle;
In the 3rd step, search this HDLC corresponding Bundle number corresponding HDLC number with list item;
The 4th step, from corresponding Bundle transmit queue, get bag, if do not wrap in the formation, turn to next list item to handle;
In the 5th step, the pointer of the packet correspondence got is write the Buffer_pointer field;
The 6th step emptied Sended, and Left is changed to data packet length, and the Waiting field is changed to wait state;
In the 7th step, handle next list item.
Send also each list item of circular test HDLC transmit status table of execution thread, handling process such as Fig. 3 of each list item described:
The first step is checked the Using field, if this HDLC is not configured to use, turns to next list item to handle;
Second step, check the Waiting field, if this HDLC is not waiting for transmit status, turn to next list item to handle;
The 3rd step, check the HDLC transmit status register that MSF provides, if the HDLC link is busy, turn to next list item to handle, if the HDLC link idle then continues next step processing;
In the 4th step, check whether Sended equals zero, if this HDLC of expression that equals zero will begin the transmission of a new data packets, notice MSF, it is 0 that side-play amount is set, if Sended is not equal to zero, illustrate that this packet has sent a part, it is the Sended byte that side-play amount is set;
In the 5th step, according to side-play amount, copy Buffer_pointer designation data bag corresponding content sends buffer memory to MSF, and copy length is the smaller value between t and the Left;
The 6th the step, Sended from add min (t, Left), Left from subtract min (t, Left);
The 7th step also had data to wait for transmission next time if Left is not equal to zero this packet of explanation, turned to next list item to handle;
The 8th step finished if Left equals zero to send, and notice MSF is changed to non-wait state with Waiting;
In the 9th step, handle next list item.
When concrete enforcement technical scheme of the present invention, according to actual conditions, sublink transmit status table contents in table can be different, if for example determine that data packet length in the Bundle formation is all less than the transmission buffer memory of hardware, Sended in the list item and Left field can be omitted, increase a field list and show that the physical length of packet gets final product, corresponding transmission scheduling thread is inserted HDLC transmit status table with data packet length, send execution thread when handling each list item, just need not to judge whether this packet has been sent out a part, directly whole packet content is copied to hardware transmission buffer memory and get final product.Though contents in table may be different with embodiments of the invention, as long as use sublink transmit status table as the intermediate layer, the temporary information in the storage sublink process of transmitting all should be in protection scope of the present invention.

Claims (5)

1, a kind of method that sends based on binding link realization data comprises:
Set up the binding link transmit queue, the corresponding transmit queue of each binding link;
It is characterized in that, also comprise following processing:
Set up sublink transmit status table, the corresponding list item of a sub-links, all list items are according to the sublink sequence arrangement;
The hardware of setting up sublink sends buffer memory, and described hardware sends the byte number of buffer memory and fixes;
Set up and send scheduling thread, select from the transmit queue of which binding link, to get bag according to sublink transmit status table;
Set up to send execution thread, the sublink situation of all configurations of circular test, and copy packet content to hardware and send in the buffer memory.
2, the method that sends based on binding link realization data as claimed in claim 1 is characterized in that:
Described transmission scheduling thread is carried out following processing:
Every sub-links corresponding states in step 1, the cycle detection sublink transmit status table finds an available sublink;
Step 2, according to the corresponding relation of sublink and binding link, obtain the binding link number of this sublink correspondence, and data fetch packet in the binding link transmit queue of sublink correspondence from then on;
Step 3 and deposit packet information in sublink transmit status table, it is unavailable revising this sublink transmit status;
The state of next sublink in the sublink transmit status table is checked in step 4, continuation.
3, the method that sends based on binding link realization data as claimed in claim 1 is characterized in that:
Described transmission execution thread is carried out following processing:
Each list item in step 1, the cycle detection sublink transmit status table is up to finding a sub-links to have packet etc. to be sent;
Step 2, check that this sublink is whether idle, if not, then return step 1;
Step 3, copy the packet content of indicating in the sublink transmit status table to hardware and send buffer memory, notice hardware sends;
Step 4, remove packet information in the corresponding list item of this sublink, change this sublink into upstate;
Next list item in the sublink transmit status table is checked in step 5, continuation.
4, as claim 1 or the 2 or 3 described methods that send based on binding link realization data, it is characterized in that:
Each list item in the described sublink transmit status table comprises:
The field whether sublink is configured to use;
Whether sublink is in the field of waiting for transmit status;
Current data packet has sent the field of byte number;
Current data packet remains the field of byte number to be sent;
Point to the field of storage packet content internal memory to be sent.
5, the method that sends based on binding link realization data as claimed in claim 4 is characterized in that:
If the data packet length in the binding link transmit queue all sends buffer memory less than hardware, the current data packet in the omission list item has sent byte number and current data packet remains byte number field to be sent, increases the physical length that a field list shows packet;
Described transmission scheduling thread is inserted sublink transmit status table with data packet length;
Described transmission execution thread directly copies whole packet content to hardware and sends buffer memory when handling each list item.
CN200610078081A 2006-05-09 2006-05-09 Method for realizing data sending based on binding link Expired - Fee Related CN100589477C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200610078081A CN100589477C (en) 2006-05-09 2006-05-09 Method for realizing data sending based on binding link

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200610078081A CN100589477C (en) 2006-05-09 2006-05-09 Method for realizing data sending based on binding link

Publications (2)

Publication Number Publication Date
CN101072224A true CN101072224A (en) 2007-11-14
CN100589477C CN100589477C (en) 2010-02-10

Family

ID=38899212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610078081A Expired - Fee Related CN100589477C (en) 2006-05-09 2006-05-09 Method for realizing data sending based on binding link

Country Status (1)

Country Link
CN (1) CN100589477C (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011150634A1 (en) * 2010-05-31 2011-12-08 中兴通讯股份有限公司 Method and apparatus for processing bandwidth capacity of multilink point-to-point protocol (mlppp) group
CN101583193B (en) * 2009-06-24 2012-03-21 中国科学院计算技术研究所 Distribution method for wireless resource ascended by base station terminal in LTE system and device
CN102436400A (en) * 2011-12-06 2012-05-02 曙光信息产业股份有限公司 Method and device for implementing zero copy drive
CN101753334B (en) * 2008-12-02 2013-10-30 智邦科技股份有限公司 Network system work management and scheduling method
CN106209880A (en) * 2016-07-21 2016-12-07 深圳羚羊极速科技有限公司 A kind of method of multi-line transmission stream medium data
CN106538032A (en) * 2014-07-14 2017-03-22 高通股份有限公司 Methods and apparatus for channel usage indication
CN106713175A (en) * 2017-02-07 2017-05-24 北京百卓网络技术有限公司 SDTP client and data sending method thereof and SDTP data system
CN111212451A (en) * 2019-12-26 2020-05-29 曙光信息产业股份有限公司 Method and device for switching network transmission channel

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753334B (en) * 2008-12-02 2013-10-30 智邦科技股份有限公司 Network system work management and scheduling method
CN101583193B (en) * 2009-06-24 2012-03-21 中国科学院计算技术研究所 Distribution method for wireless resource ascended by base station terminal in LTE system and device
WO2011150634A1 (en) * 2010-05-31 2011-12-08 中兴通讯股份有限公司 Method and apparatus for processing bandwidth capacity of multilink point-to-point protocol (mlppp) group
CN102436400A (en) * 2011-12-06 2012-05-02 曙光信息产业股份有限公司 Method and device for implementing zero copy drive
CN106538032A (en) * 2014-07-14 2017-03-22 高通股份有限公司 Methods and apparatus for channel usage indication
US10686709B2 (en) 2014-07-14 2020-06-16 Qualcomm Incorporated Methods and apparatus for channel usage indication
CN106209880A (en) * 2016-07-21 2016-12-07 深圳羚羊极速科技有限公司 A kind of method of multi-line transmission stream medium data
CN106713175A (en) * 2017-02-07 2017-05-24 北京百卓网络技术有限公司 SDTP client and data sending method thereof and SDTP data system
CN106713175B (en) * 2017-02-07 2020-09-18 北京百卓网络技术有限公司 SDTP client, data sending method thereof and SDTP data system
CN111212451A (en) * 2019-12-26 2020-05-29 曙光信息产业股份有限公司 Method and device for switching network transmission channel

Also Published As

Publication number Publication date
CN100589477C (en) 2010-02-10

Similar Documents

Publication Publication Date Title
CN100589477C (en) Method for realizing data sending based on binding link
US6226267B1 (en) System and process for application-level flow connection of data processing networks
CN103905300B (en) A kind of data message sending method, equipment and system
US7505410B2 (en) Method and apparatus to support efficient check-point and role-back operations for flow-controlled queues in network devices
US6714553B1 (en) System and process for flexible queuing of data packets in network switching
US8514874B2 (en) Thread synchronization in a multi-thread network communications processor architecture
US6522188B1 (en) High-speed data bus for network switching
CN101136854B (en) Method and apparatus for implementing data packet linear speed processing
US20110225588A1 (en) Reducing data read latency in a network communications processor architecture
WO2012162949A1 (en) Packet reassembly and resequence method, apparatus and system
WO2000060819A9 (en) Process for automatic detection of and quality of service adjustment for bulk data transfers
WO1999053648A2 (en) System and process for high-speed pattern matching for application-level switching of data packets
US8868889B2 (en) Instruction breakpoints in a multi-core, multi-thread network communications processor architecture
CN101789908B (en) Fragmental message receiving and processing method and device
JPH09504149A (en) Asynchronous Transfer Mode (ATM) Network Device
CN111274173A (en) ZYNQ-based multi-node SRIO communication design method and device
CN102916902A (en) Method and device for storing data
CN105763375B (en) A kind of data packet sending method, method of reseptance and microwave station
WO2011083445A2 (en) Memory management using packet segmenting and forwarding
US7317729B2 (en) System and process for providing auxiliary information for a packet-switched network of shared nodes using dedicated associative store
CN115344522A (en) Message conversion channel, message conversion device, electronic equipment and switching equipment
US9128785B2 (en) System and method for efficient shared buffer management
CN108173784B (en) Aging method and device for data packet cache of switch
CN100356736C (en) IP network jitter simulation method
CN100495974C (en) Flow shaping method in data transmission process

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Zhao Yankun

Inventor before: Wang Feixiang

Inventor before: Zhou Zhixiong

TR01 Transfer of patent right

Effective date of registration: 20171016

Address after: 061000 Cangzhou city of Hebei Province, the Canal Zone West Village Street Garden Fu District 5 Building 3 unit 502

Patentee after: Zhao Yankun

Address before: 518057 Nanshan District science and Technology Industrial Park, Guangdong high tech Industrial Park, ZTE building

Patentee before: ZTE Corporation

TR01 Transfer of patent right
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: 541001 No. 147, Diecai, the Guangxi Zhuang Autonomous Region District, Guilin, Zhongshan North Road

Patentee after: Zhao Yankun

Address before: 061000 Cangzhou city of Hebei Province, the Canal Zone West Village Street Garden Fu District 5 Building 3 unit 502

Patentee before: Zhao Yankun

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100210

Termination date: 20180509