博客
关于我
00023.06网络协议概述(IP地址、端口号、网络协议、TCP、UDP、三次握手)
阅读量:611 次
发布时间:2019-03-12

本文共 1322 字,大约阅读时间需要 4 分钟。

系列文章目录

文章目录

前言

C/S和B/S结构分别代表客户端-服务器和浏览器-服务器两种应用架构。C/S结构中,客户端是由开发者编写的程序,而B/S结构的客户端通常是通用浏览器。例如,QQ和微信属于C/S架构,而网页版的京东、淘宝则采用B/S架构。

一、网络的概念和分类

网络的概念涵盖了多个方面,包括物理连接、数据传输、设备配置等。严格来说,我们常说的"外网"实际上指的是互联网,而不是独立的局域网或企业网络。互联网是由多个网络通过路由器连接而成的全球性网络系统。

二、网络通讯的三个要素

(1)IP地址

IP地址是网络通信中最基础的地址信息,用于定位一台网络设备。每个网络设备(如电脑、手机、服务器等)都有一个唯一的IP地址,地址格式通常为四组数字,例如192.168.1.1。

(2)端口号

端口号用于区分不同的网络应用程序或服务。在TCP/IP协议中,每个端口号都是一个16位的数字,范围在0到65535之间。端口号的作用是帮助数据包在传输过程中找到正确的应用程序或服务。

(3)网络协议

网络协议是数据在网络上传输过程中确保准确到达并正确解析的关键机制。常见的网络协议包括TCP、UDP、HTTP、HTTPS、DNS等。TCP和UDP是传输层的核心协议,负责数据的可靠传输和无连接性传输。HTTP和HTTPS则是应用层的协议,用于网页数据的传输。

OSI网络模型

OSI(Open System Interconnection,开放系统互连参考模型)是国际标准化组织提出的一套网络模型,将网络功能分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。每一层都有特定的功能:

  • 物理层:负责数据的物理传输,包括信号的传递和介质的连接。
  • 数据链路层:处理数据的分组和错误检测,使用MAC地址进行通信。
  • 网络层:负责网络地址的转换和路由选择,常用协议包括IP、ICMP、ARP、RARP。
  • 传输层:定义数据传输的可靠性和流量控制,常用协议包括TCP和UDP。
  • 会话层:建立和管理会话,确保不同主机之间的通信。
  • 表示层:处理数据的编码和解码,包括压缩、加密等功能。
  • 应用层:提供用户面向的网络服务,常用协议包括HTTP、FTP、DNS、SMTP等。

TCP和UDP的区别

TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)是两种常用的传输层协议,主要区别如下:

  • TCP:面向连接,提供可靠的数据传输,适用于大数据量和重要数据的传输。TCP会先进行“三次握手”建立连接,并在数据传输前进行数据校验和重传。
  • UDP:无连接,传输速度快,适用于对实时性要求高但数据可靠性要求不高的场景。UDP不会进行连接建立,也不会重传数据。

三次握手与四次挥手

TCP的可靠性是由于三次握手和四次挥手机制得以实现的。在发送数据之前,TCP协议会通过三次握手建立连接,确保双方通信准备就绪。连接断开时,需要进行四次挥手,确保所有数据都已传输并释放资源。

注意事项

IP地址、端口号、网络协议、TCP、UDP的具体实现细节将在后续文章中详细讲解。

转载地址:http://kqgxz.baihongyu.com/

你可能感兴趣的文章
Python到底能做什么?它的优点在哪?
查看>>
python利用pytorch库导出图像分割算子
查看>>
python利用pyshark监听网卡来抓包其中pyshark中摸索的一些可用参数
查看>>
python利用excel分析过杀漏失
查看>>
python判断汉字数目
查看>>
python判断文件是空的,如果是空的,就删除
查看>>
python判断密码是否正确_python密码判断是否符合要求的方法
查看>>
python判断字符串包含中文_Python 判断字符串是否包含中文
查看>>
python删除第一行_Python 乱码指北:一行删掉根目录
查看>>
Python删除列表元素的三种方法
查看>>
python初步学习-python数据类型-集合(set)
查看>>
python列表生成字典_Python中将字典转换为列表的方法
查看>>
python列表对应元素合并为列表及判断一个列表是几维
查看>>
python列表去重复后按照顺序_从包含不可共元素的Python列表中删除重复元素,同时保留顺序?...
查看>>
python列表前几个_python之列表
查看>>
python列表元组
查看>>
Python列表/元组/字典和集合使用
查看>>
python列表 行列选择_python_pandas_dataframe_行列选择_切片操作
查看>>
python列表
查看>>
python列出当前目录、子目录和文件的脚本
查看>>