Sokcet编程入门(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Phoenix_smf/article/details/81584151

(一)、首先普及一些基础知识,网络上的两台主机想要进行通信,那么双方就必须有一个唯一的标识表示他们的身份以及所处的位置一般就是IP地址,此外他们要有共同的语言才能相互交流那么就是协议,最后每台主机上有许多不同的应用程序,要区别是那些程序就需要端口号,有了端口号才能精确地保证和哪个应用程序进行通讯,这就是网络上两台主机相互通信的必备条件:ip,协议,端口号
(二)、TCP/IP协议是目前世界上应用最为广泛的协议
其中TCP协议是传输控制协议
IP协议是互联网协议
而TCP/IP又分成五层的模型,分别是:
应用层:http,ftp,SMTP,Telnet
传输层:tcp/ip
网络层:
数据链路层:
物理层:网线,双绞线,网卡

(三)端口号
端口号的作用是用来区分不同的应用程序,每个应用程序都有唯一的端口号,
端口号的范围是0~65535,其中0-1024是系统保留端口号,例如:http:80,ftp:21,telnet:23
Socket就是IP+端口号的一个组合,构成了网络上两台主机通信的中街店是TCP,UDP的基础
(四)java中的网络支持
InetAddress:标尺网络上的硬件资源
URL:统一资源定位符,通过URL可以直接读写网络上的资源
Sokcets:使用TCP实现网络通信的相关socket类
DataGram:使用UDP将数据保存在数据报文中,通过网络进行通信。

(四)Java中Socket的应用(此处引用的图片皆为慕课网的截图)
Socket连接是基于TCP协议的,所以就存在Server,Client的概念,基本的socket建立连接并且通信的步骤如下:
这里写图片描述
其中server端要做的操作:
这里写图片描述

Client端要做的操作:
这里写图片描述
基本的流程就是这样,简单的Socket例子可以参考
https://blog.csdn.net/Phoenix_smf/article/details/80135832

猜你喜欢

转载自blog.csdn.net/Phoenix_smf/article/details/81584151