一份超详细的计算机网络基础学习指南

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

1. 计算机网络体系结构

1.1 简介

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

1.2 结构介绍

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

  • OSI 体系结构:概念清楚 & 理念完整,但复杂 & 不实用;
  • TCP / IP 体系结构:含了一系列构成互联网基础的网络协议,是Internet的核心协议 & 被广泛应用于局域网和广域网;
  • 五层体系结构:融合了OSI 与 TCP / IP的体系结构,目的是为了学习 & 讲解计算机原理。

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

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

2. TCP协议

Transmission Control Protocol,即传输控制协议

  1. 属于传输层通信协议
  2. 基于TCP的应用层协议有HTTP、SMTP、FTP、Telnet 和 POP3。

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

3. UDP协议

3.1 定义

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

  1. 属于传输层通信协议
  2. 基于UDP的应用层协议有 TFTP、SNMP 与 DNS

3.2 特点

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

3.3 优缺点

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

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

要求通信速度高

如: 域名转换:DNS协议 文件传输:FTP协议 网络管理:SNMP协议 远程文件服务器:NFS协议

3.5 报文段格式

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

3.6 TCP、UDP协议的区别

4. HTTP协议

  • 简介

5. Socket

5.1 简介

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

  1. Socket不是一种协议,而是一个编程调用接口(API),属于传输层(主要解决数据如何在网络中传输)
  2. 即:通过Socket,我们才能在Andorid平台上通过 TCP/IP协议进行开发
  3. 对用户来说,只需调用Socket去组织数据,以符合指定的协议,即可通信。
  • 成对出现,一对套接字:

Socket ={(IP地址1:PORT端口号),(IP地址2:PORT端口号)}

  • 一个 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,即 网际控制报文协议
  1. 属于IP层协议
  2. 注:ICMP报文不是高层协议,而是作为IP层数据报的数据,加上数据报首部,组成IP数据报发出去
  • 作用 更有效地转发IP数据包 & 提高交付成功的机会

同时允许主机 / 路由器报告差错 & 异常情况

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

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

6.4 Ping的过程

  • 定义 Packet InterNet Groper,即分组网间探测
  1. 是 ICMP报文的1个重要应用:使用了IPCM回送请求 & 回送回答报文
  2. 是应用层直接使用网络层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 路由器与交换机的区别

  • 简介
  • 区别 & 对比
  • 简介
  • 基于Cookie的身份验证 & 验证流程
  • 基于Token的身份验证 & 验证流程

作者:Carson_Ho 链接:https://www.jianshu.com/p/45d27f3e1196

本文分享自微信公众号 - 机器学习与python集中营(yasuozet01)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-06-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Linux内核及编程语言底层相关技术研究

Linux tcp/ip 源码分析 - connect

由第一篇文章可以知道,sock->ops->connect指向的方法为inet_stream_connect。

17520
来自专栏WalkingCloud

SecureCRT SSH双重socks动态端口转发

目前遇到SecureCRT SSH直接连接阿里云香港节点的云主机总是隔段时间就连不上的问题

47510
来自专栏Linux内核及编程语言底层相关技术研究

Linux tcp/ip 源码分析 - listen

// net/socket.c SYSCALL_DEFINE2(listen, int, fd, int, backlog) { struct socket...

19720
来自专栏WalkingCloud

CentOS配置iSCSI网络存储服务

iSCSI:Internet 小型计算机系统接口 (iSCSI:Internet Small Computer System Interface)。

32830
来自专栏深度学习和计算机视觉

CVPR2019 | 6D目标姿态估计,李飞飞夫妇等提出DenseFusion

6D 目标姿态估计对许多重要的现实应用都很关键,例如机器人抓取与操控、自动导航、增强现实等。理想情况下,该问题的解决方案要能够处理具有各种形状、纹理的物体,且面...

43030
来自专栏悠扬前奏的博客

LVS-4.负载调度

三种IP负载均衡技术解决了系统的可伸缩性和透明性。如何通过负载调度器将请求高 效地分发到不同的服务器执行,使得由多台独立计算机组成的集群系统成为一台虚拟服务器;...

9420
来自专栏WalkingCloud

CentOS上配置rsyslog日志客户端

rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收...

38420
来自专栏Jerry的SAP技术分享

Cloud for Customer和软电话soft phone的集成

A softphone is a software program for making telephone calls over the Internet u...

10310
来自专栏Linux内核及编程语言底层相关技术研究

Linux tcp/ip 源码分析 - three way handshake

在上一篇文章中我们讲到,connect方法会发送syn消息给服务端,之后客户端会进入TCP_SYN_SENT状态。

24020
来自专栏WalkingCloud

CentOS下利用mailx发送邮件

Linux服务器运维过程中需要监控系统状况并自动报警,有时有邮件报警的需要,一般Linux发送报警邮件可以通过本地邮箱或外部邮箱服务器,这里用最简单的方法:利用...

22420

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励