TCP/IP协议和HTTP协议

  看过谢希仁老师的《计算机网络》,但是当时编程能力弱,没有实践经验,现在遇到了关于网络连接方面的问题,还是有必要复习和梳理一些概念和过程。tcp协议存在于5层网络模型中的传输层,三次握手说的就是tcp。

看一下官方的描述:

  TCP是Tranfer Control Protocol的简称,TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。 

关于套接字的描述:

  套接字(socket)是对TCP/IP协议的封装,是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元。Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。

  在java.net库中,有Socket类和DatagramSocket,分别使用了TCP协议和UDP协议通信,我们通常使用的就是TCP协议。发送一次socket请求(OutputStream),就会有一个回应(InputStream)。

 

 

 

参考博客:

https://blog.csdn.net/u011109589/article/details/80306479

https://blog.csdn.net/qq_30843221/article/details/49127037

posted @ 2020-05-03 23:28  懂得了才能做一些改变  阅读(357)  评论(0编辑  收藏  举报