linux - 网络基础

网络基础

网络应用程序设计模式

  • C/S - client/server
    1) 优点: 1. 协议选用灵活 2. 可以缓存数据
    2) 缺点: 1. 对用户安全构成威胁 2. 开发工作量大, 调试困难
  • B/S - browser/server
    1) 优点: 跨平台
    2) 缺点: 只能使用http

协议的概念

  • 规则: 数据传输和数据解释的规则
  • 原始协议 ------>(改进、完善)------> 标准协议
  • 典型协议:TCP/UDP HTTP FTP IP ARP

分层模型

  • 七层模型
    物 – 双绞线, 光纤
    数 – 数据的传输和错误检测
    网 – 为数据包选择路由
    传 – 提供端对端的接口 tcp/udp
    会 – 解除或建立与别的节点的联系
    表 – 数据格式化,代码转换,数据加密
    应 – 文件传输,电子邮件,文件服务,虚拟终端
    在这里插入图片描述

  • 4层模型 - TCP/IP: 网络接口层 网络层 传输层 应用层

在这里插入图片描述

协议格式

数据封包

在这里插入图片描述

ip格式

4位版本号: ipv4 ipv6
8位生存时间(TTL): 最多能经过多少跳
32位源IP地址: 数据发送端地址
32位目的IP地址: 数据接收端地址
在这里插入图片描述

udp格式

16位源端口:
16位目的端口:

进程ID

  • IP - 定位一台主机 ○
  • Port - 定位一个进程
    • 127.0.0.1:80
      网络环境中
    • 2的16次方
    • 65535
      在这里插入图片描述

tcp格式

在这里插入图片描述

数据发送和接收

在这里插入图片描述

socket

套接字

套接字是网络通信的函数接口,接口中封装了传输层的协议;

猜你喜欢

转载自blog.csdn.net/weixin_43791961/article/details/111152428