CN101174938B - 一种半双工传输设备建链通讯的方法 - Google Patents
一种半双工传输设备建链通讯的方法 Download PDFInfo
- Publication number
- CN101174938B CN101174938B CN200610150500A CN200610150500A CN101174938B CN 101174938 B CN101174938 B CN 101174938B CN 200610150500 A CN200610150500 A CN 200610150500A CN 200610150500 A CN200610150500 A CN 200610150500A CN 101174938 B CN101174938 B CN 101174938B
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- link
- mentioned
- ack
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Bidirectional Digital Transmission (AREA)
- Communication Control (AREA)
Abstract
一种半双工传输设备建链通讯的方法,包括:1、初始主从双方通讯实体都处在断链状态;通讯由主方通过定时发送不携带传输数据的帧,即建链帧发起;2、主从双方进入建链状态,设置保活定时器,通知上层链路建立;3、上层在收到进入建链状态通知后,发送数据;4、主从双方通讯实体以携带传输数据的帧,即数据帧的形式进行数据的双向传输,保活标志清零;5、对端接收到数据,暂时保存在接收缓冲队列里,当接收到最后一个分片数据后,进行数据重组,然后将数据传递给上层;6、保活定时器事件到时,保活标志累加,累加到门限值,进入断链状态,通知上层链路断开,关闭保活定时器。本发明克服了半双工通讯中需要考虑双方数据不能同时发送的缺点。
Description
技术领域
本发明涉及半双工通讯领域,尤其涉及一种半双工传输设备建链通讯的方法。
背景技术
为了增强计算机设备的处理能力和可靠性,一种方法是采用双设备协同工作,双设备之间需要进行相互通讯,设备之间的硬件往往采用简单,廉价的半双工器件相连。
半双工方式指两台相互通讯的设备能实现双向的通讯,但不能在两个方向上同时进行,必须轮流交替地进行。
全双工方式指两台相互通讯的设备可以同时实现双向的通讯
设备本身的应用,需要一端的数据能够随时的发送到对方,而不必考虑对方是否也在发送。这样就需要一种方法,屏蔽了底层硬件的半双工特性,给上层提供全双工的双向数据传递接口。
发明内容
为了解决上述技术问题,本发明提供了一种在半双工条件下,建立链路进行通讯的方法。通过建立链路,监控了数据的传输,屏蔽了硬件的半双工特性,给上层提供了全双工的双向数据传递接口。
本发明提供的一种半双工传输设备建链通讯的方法,其特点是包括以下步骤:
步骤1:通讯实体分成主从双方,初始时,上述主从双方通讯实体都处在断链状态;通讯由固定一方发起,例如主方通过定时发送不携带传输数据的帧,即建链帧发起;
步骤2:上述主从双方进入建链状态,设置保活定时器,通知上层链路建立;
步骤3:上层在收到进入建链状态通知后,发送数据;上述数据按硬件实际能传输的最大长度减去帧头进行分片,暂时保存在发送缓冲队列里;
步骤4:上述主从双方通讯实体以携带传输数据的帧,即数据帧的形式进行上述数据的双向传输,保活标志清零;
步骤5:对端接收到上述数据,暂时保存在接收缓冲队列里,当接收到最后一个分片数据后,进行数据重组,然后将数据传递给上层;
步骤6:保活定时器事件到时,保活标志累加(无论是主到从,还是从到主通讯中断的情况下),累加到门限值,进入断链状态,通知上层链路断开,关闭保活定时器。
上述步骤1中,所述的建链过程包括主方定时发送REQ建链帧,从方收到上述REQ建链帧后,发送ACK建链帧;主方收到上述ACK建链帧后,发送ACK_ACK建链帧,进入建链状态(这时主方知道无论是主到从,还是从到主的两个方面通讯正常);从方收到上述ACK_ACK建链帧后,进入建链状态(这时从方知道无论是主到从,还是从到主的两个方面通讯正常)。
上述步骤3中所述的数据按硬件实际能力进行分片是按硬件能传输的最大长度减去祯头进行分片。
上述步骤3中所述的分片的长度由硬件器件本身和保活定时器时间来共同确定,达到最佳传输效果;其中小于上述最大长度不进行分片。
上述步骤4中所述的双向传输过程包括主方定时发送REQ数据帧,携带保存在发送缓冲队列中的数据;从方收到上述REQ数据帧后,发送ACK数据帧,携带保存在发送缓冲队列中的数据;主方收到上述ACK数据帧后(主方知道无论是主到从,还是从到主的两个方面通讯正常),保活标志清零;发送ACK_ACK数据帧,携带保存在发送缓冲队列中的数据;从方接收上述ACK_ACK数据帧(从方知道无论是主到从,还是从到主的两个方面通讯正常),保活标志清零。
所有保存在上述发送缓冲队列的分片数据按先进先出的方式进行发送。
上述步骤5中,最后一个分片数据由帧头的最后分片标志判定。
上述REQ建链帧与REQ数据帧的发送由REQ发送定时器控制,其在断链和建链两种状态下一直存在。
采用本发明所述方法,与现有技术相比,对半双工通讯应用进行了分层封装,简化了上层应用使用通讯的复杂性,节省了应用实现的时间,链路的引入,为应用提供了通讯的可监测性。
下面结合附图,对本发明的具体实施方式作进一步的详细说明。对于所属技术领域的技术人员而言,从对本发明的详细说明中,本发明的上述和其他目的、特征和优点将显而易见。
附图说明
图1是本发明一实施例的实体状态迁移图。
图2是本发明一实施例的传输帧结构图。
具体实施方式
下面结合附图对本发明一实施例作进一步的详细描述:
请参照附图1,该图是本发明一实施例的实体状态迁移图。通讯实体分成主从双方,初始时,上述主从双方通讯实体都处在断链状态。上层应用要通讯,首先要建链。通讯总是由固定的一方发起,以不携带传输数据的帧的形式进行数据传输,用于链路连接。上述建链过程包括通过主方定时发送REQ建链帧,REQ建链帧的发送由REQ发送定时器控制,其在断链和建链两种状态下一直存在,REQ定时到,发送REQ建链帧(主从可互换)。从方收到上述REQ建链帧后,发送ACK建链帧。主方收到上述ACK建链帧后,发送ACK_ACK建链帧,进入建链状态;设置保活定时器,通知上层链路建立。从方收到上述ACK_ACK建链帧后,进入建链状态,设置保活定时器,通知上层链路建立,保活定时器在建链状态下一直存在。
双方通讯实体都进入建链状态后,上层应用开始发送数据,数据按硬件实际能传输的最大长度减去帧头进行分片,小于最大长度不分片,形成传输帧如图2(图2显示了本发明一实施例的传输帧结构图),暂时保存在发送缓冲队列里。
主从通讯实体都处在建链状态下,主方定时发送REQ数据帧,携带保存在发送缓冲队列中的数据,REQ数据帧的发送也由上述REQ发送定时器控制。从方收到上述REQ数据帧后,发送ACK数据帧,携带保存在发送缓冲队列中的数据。主方收到上述ACK数据帧后,(主方知道无论是主到从,还是从到主的两个方面通讯正常)保活标志清零。发送ACK_ACK数据帧,携带保存在发送缓冲队列中的数据。从方接收上述ACK_ACK数据帧(从方知道无论是主到从,还是从到主的两个方面通讯正常),保活标志清零。
主方定时发送的REQ数据帧和应答从方ACK数据帧的ACK_ACK数据帧携带保存在发送缓冲队列的分片数据按先进先出的方式进行发送。从方应答主方REQ数据帧的ACK数据帧携带保存在发送缓冲队列的分片数据按先进先出的方式进行发送。
对端接收到数据,暂时保存在接收缓冲队列里,当接收到最后一个分片数据后,进行数据重组,然后将数据传递给上层。最后一个分片数据由帧头的最后分片标志判定。
无论是主到从,还是从到主通讯器件物理故障的情况下,保活定时器事件到,保活标志累加,累加到门限值,进入断链状态,通知上层链路断开;关闭保活定时器。上层应用知道链路故障,通讯不能进行。
本发明用于半双工硬件,克服了现有半双工通讯中应用需要考虑双方数据不能同时发送的缺点,做到了半双工到全双工的转换。
当然,本发明还可有其他实施例,在不背离本发明精神及其实质的情况下,所属技术领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的权利要求的保护范围。
Claims (7)
1.一种半双工传输设备建链通讯的方法,其特征在于包括以下步骤:
步骤1:通讯实体分成主从双方,初始时,上述主从双方通讯实体都处在断链状态;通讯由主方通过定时发送不携带传输数据的帧,即建链帧发起;
步骤2:上述主从双方进入建链状态,设置保活定时器,通知上层链路建立;
步骤3:上层在收到进入建链状态通知后,发送数据;上述数据按硬件实际能传输的最大长度减去帧头进行分片,暂时保存在发送缓冲队列里;
步骤4:上述主从双方通讯实体以携带传输数据的帧,即数据帧的形式进行上述数据的双向传输,保活标志清零;
步骤5:对端接收到上述数据,暂时保存在接收缓冲队列里,当接收到最后一个分片数据后,进行数据重组,然后将数据传递给上层;
步骤6:保活定时器事件到时,保活标志累加,累加到门限值,进入断链状态,通知上层链路断开,关闭保活定时器。
2.根据权利要求1所述的半双工传输设备建链通讯的方法,其特征在于,上述步骤1中,所述的建链帧发起过程包括主方定时发送REQ建链帧,从方收到上述REQ建链帧后,发送ACK建链帧;主方收到上述ACK建链帧后,发送ACK_ACK建链帧,进入建链状态;从方收到上述ACK_ACK建链帧后,进入建链状态。
3.根据权利要求1所述的半双工传输设备建链通讯的方法,其特征在于,上述步骤3中所述的分片的长度由硬件器件本身和保活定时器时间来共同确定;其中小于上述最大长度不进行分片。
4.根据权利要求3所述的半双工传输设备建链通讯的方法,其特征在于,上述步骤4中所述的双向传输过程包括主方定时发送REQ数据帧,携带保存在发送缓冲队列中的数据;从方收到上述REQ数据帧后,发送ACK数据帧,携带保存在发送缓冲队列中的数据;主方收到上述ACK数据帧后,保活标志清零;发送ACK_ACK数据帧,携带保存在发送缓冲队列中的数据;从方接收上述ACK_ACK数据帧,保活标志清零。
5.根据权利要求4所述的半双工传输设备建链通讯的方法,其特征在于,所有保存在上述发送缓冲队列的分片数据按先进先出的方式进行发送。
6.根据权利要求5所述的半双工传输设备建链通讯的方法,其特征在于,上述步骤5中,最后一个分片数据由帧头的最后分片标志判定。
7.根据权利要求6所述的半双工传输设备建链通讯的方法,其特征在于,上述REQ建链帧与REQ数据帧的发送由REQ发送定时器控制,其在断链和建链两种状态下一直存在。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610150500A CN101174938B (zh) | 2006-11-02 | 2006-11-02 | 一种半双工传输设备建链通讯的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610150500A CN101174938B (zh) | 2006-11-02 | 2006-11-02 | 一种半双工传输设备建链通讯的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101174938A CN101174938A (zh) | 2008-05-07 |
CN101174938B true CN101174938B (zh) | 2010-05-19 |
Family
ID=39423219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610150500A Expired - Fee Related CN101174938B (zh) | 2006-11-02 | 2006-11-02 | 一种半双工传输设备建链通讯的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101174938B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387012A (zh) * | 2011-10-12 | 2012-03-21 | 北京创毅视讯科技有限公司 | 一种半双工总线上数据传输的方法和接口设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371582A (zh) * | 1999-06-25 | 2002-09-25 | 艾利森电话股份有限公司 | 时分双工通信系统中的资源管理和业务控制 |
CN1512704A (zh) * | 2002-12-27 | 2004-07-14 | Lg电子株式会社 | 以太网接口设备中用于双工链路的装置和方法 |
EP1545065A1 (fr) * | 2003-12-17 | 2005-06-22 | Airbus France | Réseau de communication redondant de type Ethernet full-duplex commuté et procédé de gestion de la redondance d'un tel réseau notamment dans le domaine avionique |
-
2006
- 2006-11-02 CN CN200610150500A patent/CN101174938B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371582A (zh) * | 1999-06-25 | 2002-09-25 | 艾利森电话股份有限公司 | 时分双工通信系统中的资源管理和业务控制 |
CN1512704A (zh) * | 2002-12-27 | 2004-07-14 | Lg电子株式会社 | 以太网接口设备中用于双工链路的装置和方法 |
EP1545065A1 (fr) * | 2003-12-17 | 2005-06-22 | Airbus France | Réseau de communication redondant de type Ethernet full-duplex commuté et procédé de gestion de la redondance d'un tel réseau notamment dans le domaine avionique |
Also Published As
Publication number | Publication date |
---|---|
CN101174938A (zh) | 2008-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101593168B1 (ko) | 물리적 단방향 통신 장치 및 방법 | |
CN109923899A (zh) | 无线电链路质量降低条件下的承载转换 | |
SI2255464T1 (en) | Procedure for transmitting the PDCP status report | |
EP2996275B1 (en) | Link processing method and mobile terminal in multiplexing control protocol | |
CN103391603A (zh) | 无线传感器网络中大数据信息低功耗传输的方法 | |
CN112237026B (zh) | 数据链路层中反馈机制的优化方法和系统 | |
CN101753281B (zh) | 无线链路控制层减少冗余报文重传的方法及系统 | |
CN104836648A (zh) | 一种rlc am模式的快速重传和反馈的方法 | |
CN102571689A (zh) | 一种数据传输方法及装置 | |
CN103825832A (zh) | 丢包感知的区分型拥塞控制方法 | |
CN101237452B (zh) | 双向转发检测报文的发送方法、系统和设备 | |
CN101674235B (zh) | 数据传输方法和设备 | |
CN103179614A (zh) | 向上层传送pdcp数据单元的方法 | |
CN104618007A (zh) | 一种同步卫星tcp协议分段连接优化方法 | |
EP1986340A2 (en) | System and method for improving symmetry in data tranfer in LLC layer of peer to peer NFC device | |
CN1242630C (zh) | 一种移动网络中业务链路的检测维护方法 | |
CN105183687A (zh) | 一种分时串口通信方法及系统 | |
US8547881B2 (en) | Method, apparatus and system for transmitting ACK response in bidirectional data transmission | |
CN104184568B (zh) | 通信系统的数据传输方法及系统 | |
CN101174938B (zh) | 一种半双工传输设备建链通讯的方法 | |
CN201623716U (zh) | 带反馈的单向传输系统 | |
CN102170310A (zh) | 一种光网络通道检测的方法及装置 | |
CN101714911A (zh) | 基于通信的列车运行控制系统的数据通信方法 | |
US9510242B2 (en) | Reducing superfluous traffic in a network | |
CN1976259B (zh) | 有指导无反馈光纤单向传输的物理隔离方法和适用于该方法的单向传输系统 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100519 Termination date: 20151102 |
|
EXPY | Termination of patent right or utility model |