A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.网络编程的3要素是什么?
2.TCP协议和UDP协议的区别和特点?
3.TCP协议在什么情况下会出现阻塞,该如何解决?

4 个回复

倒序浏览
1、(1)IP地址:网络中每一台计算机的唯一标识,通过IP地址找到指定的计算机。

  (2)端口:用于标识进程的逻辑地址,通过端口找到指定进程。

  (3)协议:定义通信规则,符合协议则可以通信,不符合不能通信。
2、TCP协议的主要特点

(1)TCP是面向连接的运输层协议;

(2)每一条TCP连接只能有两个端点(即两个套接字),只能是点对点的;

(3)TCP提供可靠的传输服务。传送的数据无差错、不丢失、不重复、按序到达;

(4)TCP提供全双工通信。允许通信双方的应用进程在任何时候都可以发送数据,因为两端都设有发送缓存和接受缓存;

(5)面向字节流。虽然应用程序与TCP交互是一次一个大小不等的数据块,但TCP把这些数据看成一连串无结构的字节流,它不保证接收方收到的数据块和发送方发送的数据块具有对应大小关系,例如,发送方应用程序交给发送方的TCP10个数据块,但就受访的TCP可能只用了4个数据块久保收到的字节流交付给上层的应用程序,但字节流完全一样。

TCP的可靠性原理

可靠传输有如下两个特点:

a.传输信道无差错,保证传输数据正确;

b.不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据;

(1)首先,采用三次握手来建立TCP连接,四次握手来释放TCP连接,从而保证建立的传输信道是可靠的。

(2)其次,TCP采用了连续ARQ协议(回退N,Go-back-N;超时自动重传)来保证数据传输的正确性,使用滑动窗口协议来保证接方能够及时处理所接收到的数据,进行流量控制。

(3)最后,TCP使用慢开始、拥塞避免、快重传和快恢复来进行拥塞控制,避免网络拥塞。

UDP协议特点

(1)UDP是无连接的传输层协议;

(2)UDP使用尽最大努力交付,不保证可靠交付;

(3)UDP是面向报文的,对应用层交下来的报文,不合并,不拆分,保留原报文的边界;

(4)UDP没有拥塞控制,因此即使网络出现拥塞也不会降低发送速率;

(5)UDP支持一对一 一对多 多对多的交互通信;

(6)UDP的首部开销小,只有8字节.

TCP和UDP的区别

(1)TCP是可靠传输,UDP是不可靠传输;

(2)TCP面向连接,UDP无连接;

(3)TCP传输数据有序,UDP不保证数据的有序性;

(4)TCP不保存数据边界,UDP保留数据边界;

(5)TCP传输速度相对UDP较慢;

(6)TCP有流量控制和拥塞控制,UDP没有;

(7)TCP是重量级协议,UDP是轻量级协议;

(8)TCP首部较长20字节,UDP首部较短8字节;
3、客户端读取数据得不到反馈和服务器等待文件读取这里会出现堵塞,解决方法一给出自定义标记,不过不够完美,所以方法二采用socket中的shotdownOuput方法标记。
回复 使用道具 举报
1.网络编程的3要素是什么?
   Ip,端口号,网络协议
2.TCP协议和UDP协议的区别和特点?
  UDp 面向无连接 ,数据不安全,会丢包  ,存在大小限制,一般不大于64kb,传输效率块
  TCP 面向连接  数据安全,不存在大小限制,传输效率慢
3.TCP协议在什么情况下会出现阻塞,该如何解决?
  调用readLine()方法时会出现阻塞,当客户端传输完成时,服务端可能还在阻塞当中
  需要手动标记结束,但有一定风险性
  可以使用Socket的shutdownOutput() 进行结束标记
回复 使用道具 举报
1.        网络编程的3要素是什么?
   Ip地址、协议和端口

2.TCP协议和UDP协议的区别和特点?
  1)UDP协议是面向不连接网络协议,发送端只管发送,接收端只管接收。发送效率高,不能确保传输数据的完整性(容
  易丢包),适合视频\语方通话等缺失数据影响不大的文件;
    2)TCP协议是面向连接协议,确认客户端和服务器正常连接才传送数据,确保数据通信的安全性,但是比较消耗资源,
  比较适合重要文件。

3.TCP协议在什么情况下会出现阻塞,该如何解决?
   服务器和客户端在传输数据时,会停滞在读取和接收状态,如果没有接到数据,就会出现阻塞状态。
   ①        当接收端收到发送端关流命令时,将解除阻塞状态
   ②        使用Socket对象的shutdownOutput()方法,手动结束阻塞
回复 使用道具 举报
1.网络编程的3要素是什么?
答:3要素:ip、端口、协议

2.TCP协议和UDP协议的区别和特点?
答:UDP:发送端与接收端不建立逻辑连接,资源消耗小,传输效率高,
适用与传输音频、视屏,不适用与传输重要的文件数据

TCP:客户端与服务器建立逻辑连接,发送连接时要实现”3次握手”,可以保证数据传输的安全,应用十分广泛

3.TCP协议在什么情况下会出现阻塞,该如何解决?
答:一方在接收数据等待另一方发送数据的时候会发生阻塞,当执行到发送数据、另一方接收到数据的时候解决阻塞
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马