一、首先明白什么是 UDP/TCP

1) 相同(目的一致)都是要完成PC之间的通信。

2) 不同:

TCP:优点:可靠----TCP在传递数据之前,会有三次握手和四次挥手来建立连接和关闭连接。数据传递时,有确认、窗口、重传、拥塞控制机制。数据传完后,会断开连接用来节约资源。

缺点:效率较低,占用系统的资源高。在传递数据前,需要先建立连接,此时会消耗时间。在数据传递时,确认机制,重传机制,拥塞机制等都会消耗大量的时间,并且需要在每台设备上维护所有的传输连接。而每一个连接均会占用系统的CPU、内存等硬件资源。TCP有确认机制、三次握手机制,容易被人利用,实现DOS、DDOS、CC等攻击,即易被攻击。

UDP:优点:UDP是一个无状态的传输协议,所以它在传递数据时非常快。没有TCP的确认机制和三次握手机制,UDP被攻击者利用的漏洞较少一些。

缺点:不可靠、不稳定。因为UDP没有TCP那些可靠的机制,在数据传递时,若网络质量差,容易发生丢包

TCP

UDP

是否连接

面向连接

无连接

传输可靠性

可靠

不可靠

应用场合

传输大量数据,网络要求高

少量数据,网络要求低

速度

表:TCP/UDP不同

3) 如何选择:

数据要求准确无误,网络质量要求高:常用TCP协议的应用,例如:HTTP、HTTPS、FTP等传输文件的协议。

网络通讯质量不高,要求通讯快:使用UDP,例如NFS、SNMP、DNS、TFTP等。

二、什么是IP地址,如何查看?(默认IPV4)

1) 定义:IP地址是用来在网络中标记一台电脑的一串数字,比如192.168.1.1;在本地局域网上是唯一的。

2) 分类:IP = 网络地址 + 主机地址

图:IPV4地址分类

A类:由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”

地址范围:1.0.0.1 - 126.255.255.254

二进制:  00000001 00000000 00000000 00000001 - 01111110 11111111 11111111 11111110

可用:    126个,每个网络能容纳 1677214 个主机。

B类:由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”

地址范围:128.1.0.1 - 191.255.255.254

二进制:  10000000 00000001 00000000 00000001 - 10111111 11111111 11111111 11111110

可用:    16384个,每个网络能容纳 65534 个主机。

C类:由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”

地址范围:192.0.1.1 - 223.255.255.254

二进制:  11000000 00000000 00000001 00000001 - 11011111 11111111 11111110 11111110

可用:    2097152个,每个网络能容纳 254 个主机。

D类:第一个字节以“1110”开始,它是一个专门保留的地址。

地址范围:224.0.0.1 - 239.255.255.254

可用:    它并不指向特定的网络,目前这一类地址被用在多点广播中。

E类:以“1111”开始,为将来使用保留。E类地址保留,仅作实验和开发用。

私有IP:10.0.0.0~10.255.255.255    172.16.0.0~172.31.255.255     192.168.0.0~192.168.255.255

回路测试:127.0.0.1~127.255.255.255

扩充:IPV6是什么?

随着互联网用户的增多,将来IPV4必定不够用,则IPV6将会派上用场。IPV6号称可以为全世界的每一粒沙子编上一个网址。博主认为,随着5G的到来,人工智能发展火热,当无人驾驶、万物智能普及的时候就是IPV6上场的时候了。

3) 如何查看IP

Windows: Win+R --- cmd --- ipconfig

Linux: ifconfig

三、什么是端口?

1) 定义:端口及port,是计算机和外界通讯交流的出口。按端口号可以分为  公认端口、注册端口、动态和私有端口

2) 分类:

公认端口:0-1023,它们紧密绑定(binding)于一些服务,这些端口在开发时不可随意更改与使用。

注册端口:1024-49151,松散地绑定于一些服务,开发时可以指定用这些的某些端口号。

动态和私有端口:49152-65535,理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

3) 常见端口:

8080

HTTP

为http服务的备用端口

21

FTP

FTP服务器所开放的端口,用于上传和下载

22

SSH

远程登录

23

Telnet

远程控制Web服务器的方法

25

SMTP

发送邮件

80

HTTP

网页浏览

102

MTA

消息传输代理

109

POP3

接收邮件,客户端访问服务器端的邮件服务

110

SUN(RPC)

rpc.mountd, NFS, rpc.statd, rpc.csmd, amd

119

NNTP

NWES新闻组传输协议

135

LS

DCOM服务

137/138/139

NETBIOS Name Service

网络邻居,打印机共享等

161

SNMP

SNMP允许远程管理设备

4) 如何查看端口:

Windows:

(1) Win+R à cmd à netstat –ano  PID是端口号

(2) 打开任务管理器 à 详细信息  也可以查看PID

Linus:

netstat -ntlp

Python编程(01)----网络编程之TCP/IP/UDP/Port等知识讲解相关推荐

  1. Python中的网络编程之TCP

    Python中的网络编程之TCP 文章目录 Python中的网络编程之TCP 1.TCP介绍 2.TCP特点 3.TCP与UDP的不同点 4.tcp通信模型 5.tcp客户端 6.tcp服务器 7.T ...

  2. Java网络编程之TCP、UDP

    Java网络编程之TCP.UDP 2014-11-25 15:23 513人阅读 评论(0) 收藏 举报 分类: java基础及多线程(28) 版权声明:本文为博主原创文章,未经博主允许不得转载. J ...

  3. 数据连接linux网络编程之TCP/IP基础(四):TCP连接的建立和断开、滑动窗口

    在写这篇文章之前,xxx已经写过了几篇关于改数据连接主题的文章,想要了解的朋友可以去翻一下之前的文章 一.TCP段格式: TCP的段格式如下图所示 源端口号与目标端口号 源端口号和目标端口号,加上IP ...

  4. 网络编程之Tcp,udp

    1.TCP 2.补充异常处理 3.UDP 一TCP. 1.socket基础版本通讯 服务端: 1 import socket 2 3 server = socket.socket()# 生成一个对象 ...

  5. Linux学习——网络编程之TCP/IP协议原理

    小知识 设置ulimit值(Linux文件句柄数量)永久生效 新浪博客[转] 设置ulimit值(Linux文件句柄数量)永久生效_祥子_新浪博客,祥子,http://blog.sina.com.cn ...

  6. 【Python基础】网络编程之IP地址

    [Python基础]网络编程之IP地址 文章目录 IP 地址的介绍 1. IP 地址的概念 2. IP 地址的表现形式 2. IP 地址的作用 3. 查看 IP 地址 4. 检查网络是否正常 3. 小 ...

  7. java 网络编程简单聊天_网络编程之 TCP 实现简单聊天

    网络编程之 TCP 实现简单聊天 客户端 1.连接服务器 Socket 2.发送消息 package lesson02;import java.io.IOException;import java.i ...

  8. Python中的网络编程之UDP

    Python中的网络编程之UDP 文章目录 Python中的网络编程之UDP 一.Socket编程 `1.什么是客户端/服务器架构`? **`2.套接字:通信端点`** 3.套接字地址:主机-端口对 ...

  9. Python之路 - 网络编程之Socket

    Python之路 - 网络编程之Socket C/S架构 ? Socket ? 基于TCP ? 基于UDP ? Socket对象方法 ? C/S架构 ? 在网络通信中 , 一般是一方求一方应 , 求的 ...

最新文章

  1. 编程语言趋势最新报告:开发者最青睐DevOps,Kotlin增长最快
  2. 【转】OpenStack和Docker、ServerLess能不能决定云计算胜负吗?
  3. [NOTE] XMLHttpRequest
  4. SAP CRM IBASE的archive方法
  5. Angularjs进阶笔记(1)—不同类型的双向数据绑定
  6. Python开发入门与实战14-基于Extjs的界面
  7. MySQL8.0忘记密码了如何修改密码
  8. 为什么要在2021年放弃Jenkins?我已经对他失去耐心了...
  9. Android学习笔记27:网格视图GridView的使用
  10. 高性能、分布式、低延迟的发布订阅中间件对比 Redis 和 emitter
  11. Android优雅的ui倒计时,Hurry - 一款颜值超高的日历+倒计时 APP - Android 应用 - 生活 - 【最美应用】...
  12. 使用WLW 写博客的测试
  13. IntelliJ IDEA 快捷键及模板Templates设置
  14. C1083: 无法打开包括文件: plugin.moc: No such file or directory
  15. Cpp web(一) Ubuntu下安装使用Crow服务
  16. 关于手机的三大谣传 千万不可信
  17. 盘点开源之经典开源Windows工具集
  18. 常用putty命令汇总
  19. 设置cookies过期时间的几种方法(cookies随浏览器关闭而失效的方法)
  20. Typora去除波浪线

热门文章

  1. mc服务器经济系统,[经济]NyEconomy — 多经济系统 , 让你不局限于只有几种货币[1.8-1.12] - 服务端插件 - Minecraft(我的世界)中文论坛 -...
  2. 微信一键激活会员卡(跳转自定义链接地址)
  3. 机器学习之理解逻辑回归
  4. 阿里 暑期实习生面经(数字IC岗/四轮面试)
  5. 计算机视觉——利用openCV调用本地摄像头采集图片并截图保存
  6. MATLAB:女声转男声
  7. 人工智能原理复习 | 产生式系统
  8. 向佐晒郭碧婷与女儿合影
  9. 7年员工因拒绝钉钉打卡被开除,索赔近60万,终审判决来了!
  10. 自然语言处理(NLP)学习笔记——分词工具词性对照表