JAVASE——网络编程

目录

基本的通信架构

IP

端口

协议

UDP通信

TCP通信


基本的通信架构

CS架构(Client客户端/Server服务端)、BS架构(Browser浏览器/Server服务端)

网络编程三要素:IP、端口、协议

  • IP地址:设备在网络中的地址,是设备在网络中的唯一标识
  • 端口:应用程序在设备中的唯一标识
  • 协议:连接和数据在网络中传输的规则

IP

  • 作用:唯一定位一台网络上的计算机
  • 127.0.0.1代表本机localhost
  • ip地址的父类:
    • IPV4: 4个字节组成。,0~255, 42亿~;30亿都在北美,亚洲4亿。2011年就用尽。如127.0.0.1 。
    • IPV6: 128位。8个无符号整数。如2406:da18:ddf:4000:67d5:b226:cad7:125b
  • 公网(互联网)包括ABCD四类地址;
  • 私网(局域网)包括如192.168.xx.xx,专门给组织内部使用的地址。
  • 域名:是对于IP地址对的映射,解决IP地址难以记忆的问题

IP常用命令

ipconfig:查看本机IP地址

ping IP地址 :检查网络是否连接

端口

端口的作用是表示计算机上一个程序的进程。不同的进程有不同的端口号,用来区分软件。
端口号的范围被规定为0~65535。TCP,UDP两种不同的协议下可以使用同一端口;但是单个协议下,端口号不能一样。
端口分类:

  • 公有端口:0~1023 内置的进程使用,如HTTP:80,FTP:21,TELENT:23
  • 程序注册端口:1014-49151,分配给用户和程序,如Tomcat:8080,MySql:3306,Oracle:1521
  • 动态、私有端口:49152~65535

协议

  • 协议通俗来讲就是一种约定,就好比中国人交流说的是普通话。
  • 网络通信协议规定了速率,传输码率,代码结构,传输控制等要素。
  • 协议的规定问题非常的复杂,为了大事化小采用分层模型,如OSI模型和TCP/IP模型。
  • TCP/IP协议簇:实际上是一组协议。其中比较重要的包含:TCP-用户传输协议和UDP-用户数据报协议;比较出名的协议包括TCP和IP-网络互联协议。
  • TCP与UDP 对比:TCP:需要连接,稳定;连接经历三次握手,断开经历四次挥手;客户端、服务器分开;传输完成,释放连接,效率低。UDP:不需要不连接,不稳定;客户端与服务端没有明确的解现;发送方发送数据不管对方有没有准备好都会发送。

UDP通信

无连接、不可靠通信

不事先建立连接;发送端每次把要发送的数据、接收端IP、等信息封装成一个数据包,发出去就不管了。

java提供了一个java.net.DatagramSocket类来实现UDP通信

TCP通信

面向连接、可靠通信

要保证在不可靠的信道上实现可靠的数据传输

三次握手建立连接,传输数据进行确认、四次挥手断开连接

java.net.Socket类

  • 先启动服务端,再启动客户端!!!!

客户端

  • 连接服务器 Socket
  • 发送消息

 服务器端

  • 建立服务的端口 ServerSocket
  • 等待的用户的连接 accept
  • 接收用户的消息

 如何TCP实现服务端同时接收多个客户端的消息?

主线程定义了循环负责接收客户端Socket管道连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值