问个傻问题。

majia041

新手上路
注册
2003-04-14
消息
106
荣誉分数
0
声望点数
0
先谢谢XD们回答我以前帖子里的问题。
再问个比较傻的问题。
我知道在物理链路上传输数据包只能1个接1个的传。当2端同时传输2个包,就有碰撞,那么这2个包就都做费了。
那么我的问题是TCP是怎么做到全双工通讯的。假设就只有1条线路存在与2个HOST之间。就是说不考虑1个包走这条线,另1个包走那条线。
是通过物理链路上的分频吗?
希望DX教一下。
 
物理链路上会不会碰撞,碰撞以后是不是将数据包作废,都只取决于物理链路。
TCP的全双工,与物理链路没有关系。
 
先把网络的七层layer搞清楚,你的问题是把第一层和第三层的概念混淆在一起了.
 
OSI Model and TCP/IP

firewall.diagram4.gif


firewall.diagram4a.gif
 
tcp is using handshakes, sliding windows and retransmissions to make sure the guarrantteed data forwarding.

but for a full duplex transmission, it has nothing to do with tcp but happens in a lower level for an osi model point of view.
 
and...there is no question that is stupid...we all learn things from it
 
谢谢各位的回答。
我的问题可能本身就有问题。
那我抛掉TCP来说,
1,物理线路上有碰撞,包会作废,这是对的。
2,我不指定任何任何协议,任何软件。但肯定有能进行全双工通信的。或者更直接点,在物理线路上能不能实现全双工。
如果能,怎么做,是不是什么分频,正交之类的。如果不能,那么更高层上的全双工是怎么实现的。
 
从X.25以后,数据通讯已经废弃了线路交换(circuit switch)的概念,完全建立在数据包交换(packet switch)的基础上,所以其线路是虚线路(virtual circuit). 比较接近的例子是,你和某人通信,你不需要自己雇佣一个专门的邮递员为你送信,而是将信投到邮局.你的通信伙伴也把信交给邮局.你们两人的信在邮局的物流里流动.双工就是这么实现的.
 
2个host之间的一条线路是逻辑概念,实际是由单独的收发线路组成的。观察一下你的网线头,如果是10BASE-T,也就是一般的双绞线的网线头是由8根线组成的(通常只用四根),其中就有专门的收和专门的发。
 
问题有错,
1.物理链路上看到的不是包。
2.包在第三层。
3.碰撞的概念来自token,完全是逻辑概念。
4.pear说的对,先查查RJ45内各线是管啥用的再说。
 
最初由 Pear 发布
2个host之间的一条线路是逻辑概念,实际是由单独的收发线路组成的。观察一下你的网线头,如果是10BASE-T,也就是一般的双绞线的网线头是由8根线组成的(通常只用四根),其中就有专门的收和专门的发。

这种解释在某种情况下是对的,但是不能解释同轴铜线或光纤线方式的连接,那可真的只有一根线.:D

shusheng说的对,双工与物理连接方式无关.即使用一根线,也能够实现双工.
 
我是外行,我一点不懂。我从楼主字面的意思上理解这个问题其实就是这个:
在某一时刻,最单元化的那个物理线路上,是往一边传数据,还是两边一起传。
至于对用户层面来说,所展现的是什么就是另外一会事了。就象多任务系统,在某一时刻是单任务的。不知道我理解的对不对。
 
够深奥的。
一点都不理解。(我是个大外行):)
 
最初由 majia041 发布
谢谢各位的回答。
我的问题可能本身就有问题。
那我抛掉TCP来说,
1,物理线路上有碰撞,包会作废,这是对的。
2,我不指定任何任何协议,任何软件。但肯定有能进行全双工通信的。或者更直接点,在物理线路上能不能实现全双工。
如果能,怎么做,是不是什么分频,正交之类的。如果不能,那么更高层上的全双工是怎么实现的。

1并不总是对的。比方最常见的ethernet,如果发生了碰撞,两边的网卡会各自延时后重传。ethernet的specification甚至给出了延时算法,用来避免碰撞后再碰撞的情况。再或者,token ring是通过token来控制发信权的,那样,物理线路上就没有碰撞一说了。

如果具体到ethernet,那么是的,它在电气信号上是无法有两个人同时发包的。但即使是这样,并不妨碍高层协议在发送包的同时接受啊。
 
后退
顶部