java高级之网络通信

1.网络通信:

      IP地址:设备在网络上的唯一标识

     127.0.0.1 表示本机地址

      localhost 表示本机

     MAC地址:网卡的物理地址

     DNS:域名解析服务

 端口:     设备上的程序用来在网络上交换数据的标识

 端口的值是从0~65535

   尽量不要使用比较小的数字

   Web服务:80  、8080/8081、8009

   MySQL:3306

   Oracle:1521

如何检测两台设备之间的网络是不是通的

 网络防火墙

如何查看网络是不是同的

ping 对方IP

如何查看本机IP

扫描二维码关注公众号,回复: 8711555 查看本文章
ipconfig

如何查看哪些端口可以使用??

netstat -ano

 如何检测两台设备之间的网络是不是通的

 网络防火墙

如何查看网络是不是同的

ping 对方IP

如何查看本机IP

ipconfig

2.java.net

       ServerSocket 服务端套接字

       Socket  客户端套接字

==================================

作业:

1.实现连接多个客户端

2.服务端将收到的消息转发给其它的客户端【实现群聊天室】


3..网络通信的7层模型和4层模型

OSI 7层模型

应用层 HTTP FTP SMTP

表示层

会话层

传输层    TCP   UDP

网络层 IP

数据链路层

物理层

---------------------------

TCP/IP四层模型

应用层 HTTP FTP

传输层 TCP UDP

网络层 IP

接口层

2.TCP和UPD协议

  TCP:传输控制协议,面向连接的 可靠的    类似于打电话

  UDP:用户数据报协议,无连接的,不可靠的   类似于发短信

  


4.  TCP协议的传输过程:

  1.通过三次握手建立连接

  2.数据通信         

  3.通过四次挥手断开连接

    

有序性:每个数据报都有一个序号,保证数据的顺序

丢包重传:每发送一个包,都要等待接收方的响应,如果在一定的时间内没有收到响应,就认为数据丢失,就重新

发送一次       

 重复数据处理:接收方如果收到数据包会检验是否重复,如果重复,就丢弃

   


5. Java中基于UDP的通信

 DatagramSocket  

 ----------------------------------------------------

网络通信项目:

 1.你画我猜[服务端负责画   客户端负责猜]

 2.网络版的小游戏

 3.山寨QQ[聊天室,私聊,群聊]

 4.远程控制

6. 你画我猜业务流程:

  客户端:【我猜】 

1.客户端连接服务端

 2.等待接收服务端发送来的图像数据

 3.将收到的图像数据显示在界面上

 4.提供一个输入框输入猜出来的词语

 5.将猜出来的词语发送给服务端

 6.接收服务端发送来的验证结果

 服务端:【你画】 

1.等待客户端连接

 2.随机产生要画的词语

 3.能够在绘制区域绘图

 4.将绘制区域发送给客户端

 5.接收客户端发送来的词语,判断是否正确,并将判断的结果发送给客户端

 6.如果结果正确,就继续下一个词语
发布了52 篇原创文章 · 获赞 38 · 访问量 2503

猜你喜欢

转载自blog.csdn.net/weixin_44364444/article/details/104021043
今日推荐