第三十五天--小人物的坚持--网络编程

1,网络编程

可以让设备中的程序和网络上其他设备中的程序进行数据交互(实现网络通信的)

2,java提供了哪些网络编程的方式

java.net.*包下提供了网络编程的解决方案

基本的通信架构

有两种--CS架构(Client客户端/Server服务端)--BS架构(Browser浏览器/Server服务端) ​​​​​​​

无论CS架构和BS架构都必须依赖网络编程

3,网络通信三要素

IP地址:设备在网络中的地址,是唯一的标识

端口:应用程序在设备中唯一的标记

协议:连接和数据在网络中传输的规则

4,IP地址

全称:互联网协议地址

有两种形式:IPv4--32位,不够用

和IPv6--共128位,分为八段表示,每段每四位编码成一个十六进制位表示,八段用冒号隔开

IP域名:例如http://www.itheima.com

公网IP,内网IP

公网IP:可以连接互联网的IP地址

内网IP:也叫局域网IP,只能组织机构内部使用

192.168开头就是常见的局域网地址,专为组织机构使用

特殊IP:172.0.0.1、localhost:代表本机IP,只会寻找当前所在的主机

IP常用命令:

ipconfig:查看本机IP地址

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

物理地址(MAC地址):设备的唯一标识,出厂焊死在设备上的

InetAddress--代表ip地址

5,端口

标记正在计算机设备上运行的应用程序的,被规定为一个16位的二进制,范围为0~65535

分类:

周知端口:0~1023,被预先定义的知名应用占用(如:HTTP占用80,FTP占用21)

注册端口:1024~49151,分配给用户进程或某些应用程序

动态端口:49152~65535,因为它一般不固定分配某种进程,而是动态分配

注意:我们自己开发程序一般使用注册端口,且一个设备中不能出现两个程序端口号一样

6,协议

网络通信协议:网络上通信的设备,实现规定的连接规则,以及传输数据的规则

开放式网络互联标准:OSI网络参考模型

OSI网络参考模型:全球网络互联标准--太过理想化

TCP/IP网络模型:事实上的国际标准

7,传输层的两个协议

UDP:用户数据报协议

特点:无连接,不可靠通信

不实现建立连接,数据按照包发,包里面包含:自己的ip,程序端口,目的地ip,程序端口等

发送方不管对方是否在线,数据在中间丢失也不管,如果接收方收到数据也不返回确认

故而是不可靠的,但是通信效率高,语音通话,视频直播等

TCP:传输控制协议

特点:面向连接,可靠通信

TCP的最终目的:要保证在不可靠的信道上实现可靠的传输

TCP主要有三个步骤实现可靠传输:三次握手建立连接,传输数据进行确认,四次挥手断开连接

三次握手:

可靠连接:确认通信双方,收发消息都是正常无问题的(全双工)

传输数据进行确认,每次发消息都有编号标识

四次挥手断开连接:

目的:确保双方数据的收发都已经完成

​​​​​​​

8,UDP通信

特点:无连接,不可靠

java提供了java.net.DatagramSocket类来实现UPD通信

参数一:要发送的数据,字节数组

参数二:发送数据的大小

参数三:目的地IP地址

参数四:接收端端口号

相关推荐
数智化管理手记5 小时前
精益生产中的TPM管理是什么?一文破解设备零故障的密码
服务器·网络·数据库·低代码·制造·源代码管理·精益工程
末日汐7 小时前
传输层协议UDP
linux·网络·udp
RopenYuan10 小时前
FastAPI -API Router的应用
前端·网络·python
@insist12310 小时前
网络工程师-VLAN 技术原理与配置指南(软考局域网核心考点)
网络·网络工程师·软考·软件水平考试
TechWayfarer10 小时前
如何搭建企业级IP归属地查询平台?
网络·网络协议·tcp/ip
TechWayfarer10 小时前
科普:IP归属地中的IDC/机房/家庭宽带有什么区别?
服务器·网络·tcp/ip
EmbeddedCore12 小时前
守护网络通信的基石:深入解析SSL/TLS协议
网络·网络协议·ssl
(Charon)13 小时前
【网络编程】关于 KV 数据库项目搭建的一些思考:从网络层到存储层该怎么想
网络
.豆鲨包13 小时前
【计算机网络】数据链路层
网络·网络协议·计算机网络
liulilittle15 小时前
WintunAdapter 设计解析:一个 VNP 数据面的无锁优雅实现
网络·c++·it·通信