提个关于tcp/ip连接的问题。(50分)

L

lcl_003

Unregistered / Unconfirmed
GUEST, unregistred user!
我知道tcp/ip是可靠连接,要三次握手。但是不清楚到底是怎么回事。比如说我给一个机器
发送了一次数据也就是建立了一次tcp/ip连接,进行了三次握手,那么是不是这个连接始终
存在?还是说发完了连接就断了?如果是断了那我每发送一次数据就要进行一次连接?
可不可以就建立一次连接,使这个连接始终存在?
另外我与多个ip进行tcp/ip连接和我与一个ip进行tcp/ip连接有什么注意的地方吗?
 
俺也gz:)
 
tcp/ip连接后不会断开,估计客户端自动定时地向服务器联系。
 
不会自动断开的。
一个连接意味着建立了一个套接字,多个就是多个了,每个都不一样的,类似多个进程。
 
那我第一次发送数据就建立了连接,这个连接不会断开,那我以后再发送数据还要进行三次
握手?
 
我记的好象是连接完就断开了,网叶就是这样的,每次连接都是连接完就断开。
 
网叶用的是建立在tcp/ip之上的http协议,http协议的特点是收完就断开。因为
网络用户很多,每个用户登陆后不断开的话就会大量浪费网络资源。
 
一般的做法会不会是这样:

建立TCP/IP连接后,就直接沿用该连接,只需要在程序中检测该连接
是不是由于什么异常原因断开。如果断开了的话,再尝试连接。

TCP/IP连接是持久的连接是可靠的连接,是占用网络资源的连接,建立一个
TCP/IP连接对,可能就跟你打电话差不多,如果没有特殊情况,这个连接会一直到
你放弃这个连接为止。
 
大家千万不要把tcp连接视为是一根你独占的电话线,其实一个tcp三次握手只是

两台通信的主机之间的一种确认协议,成功的三次握手表明,两台主机已经为这次连接

准备好了所有的条件,包括必要的缓冲区,必要初始化,必要的确认等等,就等着对方的数据到来

或自己发送数据。当数据发出去时,tcp协议能够保证数据报能够完整准确地发送到

对方,其中的一切艰难险阻,你都可以不知道,这就是所谓的建立了一个有差错控制的

,保证数据完整到达的连接,而udp协议则不是这样。有时间以后继续说说
 
嗯,,受益。。

就网络传输的过程来说,确实应该这样理解。
 
CODEHUNTER, 继续继续啊,再多说点啊
 
三次握手是指通信双方彼此交换三次信息,建立连接和释放连接都会进行三次握手。
建立连接
发送方 --------1(请求连接)----------> 接受方
发送方 <-------2(接受连接请求)------- 接受方
发送方 --------3(开始传输数据)------> 接受方
释放连接(分为对称释放(双方都同意)和非对称释放(单方强行释放))
发送方 --------1(请求断开连接)-------> 接受方
发送方 <-------2(同意断开连接)------- 接受方
(释放)发送方 --------3(响应断开连接)------> 接受方(收到响应,释放自己)
 
我不清楚的是如果建立了连接这个连接是否会一直存在,直到一方断开连接?
如果连接一直存在那每次发送和接受数据是否都要三次握手?
 
如果建立了连接,这个连接会一直存在,直到一方断开连接
 
如果没有一方主动断开连接,则连接一直保持,除非网络出了故障
 
那每次发送和接受数据是否都要三次握手?
 
不需要。
 
多人接受答案了。
 
顶部