网络编程

什么是网络编程?

什么是网络、计算机网络的构成是什么?
  • 在计算机领域当中,网络是信息传输、接收、共享的虚拟平台
  • 通过它把各个点、面、体的信息联系到一起,从而实现这些资源的共享
  • 网络是人类发展史来最重要的发明,提高了科技和人类社会的发展
什么是网络编程?
  • 网络编程从大的方面说就是对信息的发送到接收
  • 通过操作响应的Api调度计算机硬件资源,并利用传输管道(网线)进行数据交换的过程
7层网络模型-OSI
  1. 七层模型
  • 应用层,app应用
  • 表示层,把应用数据表示成对应数据层面的东西
  • 会话层,不同机器应用之间的用户建立管理的作用
  • 传输层,数据有效传输到网络层
  • 网络层,控制子网的运行
  • 数据链路层,进行物理的地址寻找
  • 物理层,机械电子通信,原始比特流传输
  1. 分类划分
  • 基础层:物理层、数据链路层、网络层
  • 传输层:TCP-UDP协议层、Socket
  • 高级层:会话层、表示层、应用层

Socket与TCP、UDP

什么是Socket?
  • 简单来说是IP地址与端口的结合协议(PFC 793)
  • 一种地址与端口的结合描述协议
  • TCP/IP协议的相关API总称;是网络Api的集合实现
  • 涵盖了:Stream Socket / Datagram Socket
Socket的作用和组成
  • 在网络传输中用于唯一标识两个端点之间的链接
  • 端点:包括(IP + Port)
  • 4个要素:客户端地址、客户端端口、服务器地址、服务器端口
Socket 之 TCP
  • TCP是面向连接的通信协议
  • 通过三次握手建立连接,通讯完成时要拆除连接
  • 由于TCP是面向连接的,所以只能用于端到端的通讯
Socket 之 UDP
  • UDP是面向无连接的通讯协议
  • UDP数据包括目的端口和源端口号信息
  • 由于通讯是不需要连接的,所以可以实现广播发送,并不局限于端到端
Client-Server Application
  • TCP/IP 协议中,两个进程通信的主要模式为:CS模型
  • 主要目的:协同网络中的计算机资源、服务模式、进程间数据共享
  • 常见的:FTP、SMTP、HTTP

报文、协议、Mac地址

报文段
  • 报文段在TCP/IP协议网络传输过程中,起着路由导航作用
  • 用以查询各个网络路由网段、IP地址、交换协议等IP数据包
  • 报文段充当整个TCP/IP协议数据包的导航路由功能
  • 报文在传输过程中不断地封装成分组、包、帧来传输
  • 封装方式就是添加一些控制信息组成的首部,即报文头
传输协议
  • 协议顾名思义,一种规定,约束
  • 约定大于配置,在网络传输中依然适用;网络的传输流程是健壮的稳定的,得益于基础的协议构成
Mac地址
  • Media Access Control 或者 Medium Access Control
  • 意译为媒体访问控制,或称为物理地址、硬件地址
  • 用来定义网络设备的位置
  • 形如:44-45-53-54-00-00
IP地址
  • 互联网协议地址(Internet Protocol Address),缩写为IP地址
  • 是分配给网络上使用网际协议的设备数字标签
  • 常见的IP地址分为IPv4与IPv6两大类
  • IP地址由32位二进制组成,常以xxx.xxx.xxx.xxx形式表现,每组xxx代表小于或等于255的10进制数。
  • 分为A/B/C/D/E五大类,其中E类属于特殊保留地址
IP地址-IPv4
  • IPv4地址总数量:2的32次方个,最终在2011年2月3日用尽
  • 如果主机号是全1(1.1.1.1),那么这个地址为直接广播地址
  • 如果主机号全是255(255.255.255.255),这个地址为受限广播地址,代表局域网的广播地址,如果使用UDP往这个IP发送信息,name局域网的其他设备都能收到信息,如果向1.1.1.1发送信息,理论上来讲网络上所有的设备都能接收到信息,但是会被局域网的防火墙所拦截
IP地址-IPv6
  • 总共有128位长,IPv6地址的表达形式,一般采用32个十六进制数。
  • 由两个逻辑部分组成:一个64位的网络前缀和一个64位的主机地址,主机地址通常根据物理地址自动生成。
  • 举例:2001:ab38:3837:0000:f8c4:a893:9813:2452
  • IPv4转成IPv6一定可行,IPv6转换为IPv4不一定可行
端口
  • 如果把IP地址比作一间房子,端口就是出入这间房子的门或者窗户
  • 在不同的窗户后有不同的人,房子中的用户与外界交流的出口
  • 外界的鸽子(信息)飞到不同窗户也就是给不同的人传递信息
  • 0到1023号端口以及1024到49151号端口都是特殊端口
  • 计算机之间依照互联网传输层TCP/IP协议的协议通信,不同的协议对应不同的端口
  • “49152”到“65535”号端口属于“动态端口”范围,没有端口号可以被正式的注册占用
远程服务器
  • 局域网:一般而言,家里的环境以及公司相互电脑之间环境都属于局域网,同一个路由器下的设备
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

发飙的蜗牛咻咻咻~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值