网络编程(一)

本文深入探讨了网络协议的基础概念,包括TCP/IP协议中的报文段功能,IP地址分类及IPv6的特点,端口号的作用与分配。重点解析了UDP协议的用途与特性,如TFTP和SNMP的应用,以及UDP在Java中的API使用。同时,文章还讲解了单播、广播和多播的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,什么是插座

 

报文段:是指TCP/IP协议网络传输过程中,起着路由导航作用
用以查询个个网段路由网段、IP地址、交换协议等IP数据包
报文段充当整个TCP/IP协议数据包的导航路由功能


报文在传输过程中会不断地封装成组、包、帧来传输;
封装方式就是添加一些控制信息组成的首部,即报文头

MAC地址:媒体访问控制 ,物理地址 ,硬件地址
用来定义网络设备的位置

IP地址由32位二进制数组成 ,常以4个十进制位进行表示:例如 192.168.0.1

分为A B C D E五类地址

IPV6:128位,32个16进制数字

由两个逻辑部分组成:一个64位的网络前缀和64位的主机地址,主机地址通常根据物理地址自动生成,叫做EUI-64

端口号:0到1024号端口,以及1024到49151都是特殊端口
hhtp对应80端口  https对应443端口


49152 - 65535号端口属于动态端口范围,没有端口可以被正式注册

端口总数:65536个,连接可以建立65536个

 

2.UDP 

 UDP的用途:DNS TFTP SNMP应用层协议会使用UDP进行传输

简单网络管理协议SNMP:属于应用层协议,用于网络管理

SNMP协议主要由两大部分构成:SNMP管理站和SNMP代理.SNMP管理站是一个中心节点,负责收集维护各个SNMP元素的信息,并对这些信息进行处理,最后反馈给网络管理员;而SNMP代理是运行在各个被管理的网络节点之上,负责统计该节点的各项信息,并且负责与SNMP管理站交互,接收并执行管理站的命令,上传各种本地的网络信息。

  SNMP管理站和SNMP代理之间是松散耦合。他们之间的通信是通过UDP协议完成的。一般情况下,SNMP管理站通过UDP协议向SNMP代理发送各种命令,当SNMP代理收到命令后,返回SNMP管理站需要的参数。但是当SNMP代理检测到网络元素异常的时候,也可以主动向SNMP管理站发送消息,通告当前异常状况。

 

网络协议TFTP

TFTP(普通文件传输协议,简单文件传输协议)是TCP / IP协议族中的一个用来在客户端与服务器之间进行简单文件传输的协议。和使用TCP的文件传输协议(FTP)不同,为了保持简单短小,TFTP使用了UDP.TFTP的实现(和它所需要的UDP,IP,和设备驱动程序)可以放入只读存储器中

TFTP是一个简单的协议,适合于只读存储器,仅用于无盘系统进行系统引导,它只使用几种报文格式,是一种停止等待协议

特点:
1,简单
2,占用资源小
3,适合传递小文件
4,适合在局域网进行传递
5,端口号为69
6,基于UDP实现

 

缺陷:
TFTP分组中并不提供用户名和口令。这是TFTP的一个特性(即“安全漏洞”)。由于TFTP是设计用于系统引导进程,它不可能提供用户名和口令。
目前大多数TFTP服务器提供了一个选项来限制只能访问特定目录下的文件,这个目录中只包含无盘系统进行系统引导时所需的文件

上图:UDP报文头(共64位字节)

0-15:源端口源端口号16-31目标端口号32-47:存储数据报文的长度48-63:检验码的长度

udp包的最大长度:等于存储的最大容量减去自身协议的字节长度(即上图的报头)2 ^ 16次方-1-8byte = 65507byte

 

2.1UDP的java api

 

 

 

 

 后面的API大多基于该构造函数的三个参数的获取与集

 

 

 

 

2.2单播广播多播(组播)广播  

 

 

 

 

 

 

 广播地址的计算:

 

 广播通信地址的例子:

 

 

由于主机一和主机二处于不同的网段,所以主机一与主机二无法进行广播通信 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值