0
点赞
收藏
分享

微信扫一扫

经典博文赏析:计算机网络基础

奔跑的酆 2021-09-28 阅读 68
日记本

前言

想要成为一名优秀的Android开发,你需要一份完备的 知识体系,在这里,让我们一起成长为自己所想的那样~。

  • 计算机网络基础 该是程序猿需掌握的知识,但往往会被忽略
  • 今天,我将献上一份详细 & 清晰的计算机网络基础 学习指南,涵盖 TCP / UDP协议、Http协议、Socket等,希望你们会喜欢。

目录


1. 计算机网络体系结构

1.1 简介

  • 定义
    计算机网络的各层 + 其协议的集合
  • 作用
    定义该计算机网络的所能完成的功能

1.2 结构介绍

  • 计算机网络体系结构分为3种:OSI体系结构、TCP / IP体系结构、五层体系结构

低三层为通信子网,负责数据传输
高三层为资源子网,相当于计算机系统,完成数据处理;
传输层承上启下

  • TCP / IP的体系结构详细介绍
    由于 TCP / IP体系结构较为广泛,故主要讲解

  • OSI的体系结构详细介绍


2. TCP协议

Transmission Control Protocol,即 传输控制协议

关于TCP的其他知识:如三次握手、四次挥手、无差错控制原理等,具体请看文章:计算机网络:这是一份全面 & 详细 的TCP协议攻略


3. UDP协议

3.1 定义

User Datagram Protocol,即 用户数据报协议

3.2 特点

无连接的、不可靠的、面向报文、无拥塞控制,具体介绍如下:

3.3 优缺点

  • 优点:速度快
  • 缺点:消息易丢失(特别是 网络较差时)

3.4 应用场景(对应应用层协议)

要求通信速度高

3.5 报文段格式

  • UDP的报文段共有2个字段:数据字段 & 首部字段
  • 下面主要介绍首部(8字节、4个字段)

3.6 TCP、UDP协议的区别


4. HTTP协议

  • 简介

  • 关于其工作方式、报文段等知识,请看文章:这是一份全面& 详细 HTTP知识讲解


5. Socket

5.1 简介

  • 即套接字,是应用层 与 TCP/IP 协议族通信的中间软件抽象层,表现为一个封装了 TCP / IP协议族 的编程接口(API)

  • 成对出现,一对套接字:
Socket ={(IP地址1:PORT端口号),(IP地址2:PORT端口号)}

  • 一个 Socket 实例 唯一代表一个主机上的一个应用程序的通信链路

5.2 其他知识

关于Socket的原理、机制过程 & 使用方式,具体请看文章:Android:这是一份很详细的Socket使用攻略


6. 其他知识

6.1 在浏览器中输入url地址 ->> 显示主页的过程

6.2 IP地址(IPv4地址)

  • 定义
    连接在Internet中的每一台主机(或 路由器)的全球唯一的标识符

  • 组成
    IP地址 = 32位 = 网络号 + 主机号;即IP地址::={<网络号>,<主机号>}

不同类型的IP地址,其主机号 & 网络号所占字节数不同;故:一个IP地址在整个网络范围内是唯一的

  • 分类
    传统的IP地址是分类的地址,分为A,B,C,D,E五类

  • 特别注意:在各类IP地址中,有一些IP地址用于特殊用途,不能用于做主机IP地址

6.3 ICMP协议

  • 定义
    Internet Control Message Protocol,即 网际控制报文协议
  • 作用
    更有效地转发IP数据包 & 提高交付成功的机会
  • 分类
    ICMP差错报告报文 & ICMP询问报文

  • 主要应用
    PING(分组网间探测)、Traceroute(跟踪1个分组从源点到终点的路径,原理 = 从源主机向目的主机发送一连串的IP数据报)

下面,将主要介绍Ping的过程

6.4 Ping的过程

  • 定义
    Packet InterNet Groper,即分组网间探测
  1. 是应用层直接使用网络层ICMP的1个例子,无经过传输层的TCP、UDP
  • 作用
    测试2个主机的连通性

  • 原理

    1. 向目的主机发送多个ICMP回送请求报文
    2. 根据 目的主机返回的ICMP回送回答报文中的时间戳,从而计算出往返时间
    3. 最终显示的结果:发送到目的主机的IP地址、发送 & 收到 & 丢失的分组数、往返时间的最小、最大 & 平均值
  • 过程
    假设有两台主机:
    (目的主机)PC1:IP = 192.168.1.1
    (源主机)PC2:IP = 192.168.1.2

6.5 路由器与交换机的区别

6.6 Cookie 与 Session

  • 简介

  • 区别 & 对比

6.7 Cookie 与 Token

  • 简介

  • 基于Cookie的身份验证 & 验证流程

  • 基于Token的身份验证 & 验证流程


7. 总结

  • 本文全面讲解了 开发的基础知识:计算机网络
举报

相关推荐

0 条评论