网络编程学习笔记

一、互联网-网络传输数据

ISO(国际标准化组织)—>网络体系结构标准 OSI模型

OSI 七层模型

  1. 应用层:提供用户服务,具体内容由特定程序规定
  2. 表示层:提供数据的压缩解压和加密等
  3. 会话层:建立程序级的连接,决定使用什么样的传输服务
  4. 传输层:提供合适的通信服务,流量控制
  5. 网络层:路由选择,网络互联,分组传输
  6. 链路层:提供链路交换,具体消息发送
  7. 物理层:物理硬件,接口

OSI模型的优点

  1. 将功能分开,降低网络传输中的耦合度,每一部分完成自己的功能,开发更加清晰。
  2. 高内聚,低耦合:
    • 高内聚:使模块功能单一,不混杂。
    • 低耦合:模块之间尽量减少互相的关联和影响。

四层、五层模型

四层模型

  1. 应用层:应用层、表示层、会话层
  2. 传输层:传输层
  3. 网络层:网络层
  4. 物理链路层:链路层、物理层

五层模型–TCP/IP模型

  1. 应用层:应用层、表示层、会话层
  2. 传输层:传输层
  3. 网络层:网络层
  4. 链路层:链路层
  5. 物理层:物理层

要求:能够顺序说出七层模型,知道如何对应四层五层模型,简单理解每一层的功能,能够理解数据传输过程

二、什么是协议

网络协议

网络通信中,各方必须遵守的规定,包括建立什么连接,如何识别,消息结构等

应用层:TFTP HTTP SMTP DNS

传输层:TCP UDP

网络层:IP

三、网络概念

主机:计算机的名称 localhost

# 获取主机名
socket.gethostname()
# 通过主机名解析IP
socket.gethostbyname('主机名')
# 
In:socket.gethostbyaddr('www.baidu.com')
Out:('127.0.0.1',[],['119.75.216.20'])
#     主机名     别名    IP
# 将IP字符串转换成为二进制
In [6]: socket.inet_aton('192.168.1.2')
Out[6]: b'\xc0\xa8\x01\x02'
# 将二进制IP转换为十进制字符串
In [7]: socket.inet_ntoa(b'\xc0\xa8\x01\x02')
Out[7]: '192.168.1.2'
# 将十进制IP字符串转换成为二进制IPv4
In [9]: socket.inet_pton(socket.AF_INET,'192.168.1.2')
Out[9]: b'\xc0\xa8\x01\x02'
# 将十六进制IPv6地址转换成为二进制IPv6
In [
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值