网络编程之OSI七层协议

软件开发架构

网络通讯

就是编写一款基于网络的软件

常见的软件开发架构

C/SB/S架构
本质上B/S架构也是C/S架构的一种

客户端------------------------服务端
C:client -------------------- S:server

客户端:类似是客人
服务端:类似是饭店
客户端可以有多个,而服务器一遍只有一个
除了服务器之外的都可以称之为客户端

服务端:为所有的客户端提供服务的:
1.要不间断的对外提供服务
2.每个服务端都要一个公网IP

OSI七层协议

什么是网络:上传和下载数据的过程
网络的组成部分:物理连接设备 + 互联网网通讯协议(OSI七层协议)

互联网协议按照功能不同分为OSI七层或 TCP/IP 五层或 TCP/IP 四层
互联网协议

1. 物理层

物理层是负责发送高低电频的,就是一串二进制组成,但由于电脑无法识别叠加一起的电信号,所有必须进行分组,来表示不同的意思

2. 数据链路层

是负责把电信号进行分组,物理层做不了分组的事情

该层使用的协议是:以太网协议,以太网协议规定了每一个接入互联网的计算机都要有一个网卡,每一个网卡出厂就印上了唯一的Mac地址,十二位表示的十六进制,在局域网中,Mac地址就能确定唯一的一台计算机

数据我们称之为是数据帧,组成是:head + data

head的组成:(固定的18字节)
发送者的地址(6个字节)
结束者的地址(6个字节)
数据类型(6个字节)
data:最少发送的数据是46个字节
每一次发送一帧的数据:64个字节 = head(18)+ date(46)

3. 网络层

网络层中的数据我们称之为 数据包

该层使用的是 IP协议,它规定接入互联网的计算机都要有一个IP地址
IP地址: IPv4、IPv6

IPv4:
0.0.0.0------>255.255.255.255

如何查看自己IP地址

在终端中(cmd)----> ipconfig ----> ipv4

一个单纯的 IP地址其实并不能确定唯一的计算机,只能确定一个局域网,如何确定一个局域网中的唯一一台计算机:

IP地址 +子网掩码

由于ARP协议,所以我们可以通过IP地址计算出来Mac地址

IP+MAC地址确定世界范围内唯一一台计算机

4. 传输层

传输层中的数据我们称之为数据段

使用的是TCP协议UDP协议,端口协议,0-65535

  1. 0-1024之间的端口,一般是系统使用
  2. 1025-8000一般是常用的端口号
  3. 我们以后尽量使用8000以后的
    端口:一个端口代表的就是台计算机中正在运行的应用程序,所以同一时刻,一台计算机中不能有一个端口号被两个应用占用

TCP协议和UDP协议:

  • 三次握手:建立连接
  • 四次挥手:断开连接
UDP协议:

它不建立连接,发送数据的时候直接发,至于对方能否收到、没关系
速度快、数据不安全

TCP:

速度慢、数据安全(反馈机制,双向通道)

应用层

  1. 我们自己开发的客户端软件,协议就可以按照我们自己规定的使用
  2. 浏览器使用的就是HTTP协议
  3. HTTP协议
    1. HTTP协议它的数据不安全,明文传输
    2. HTTPS协议更加安全,密文传输
    3. https = http + ssl证书
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值