网络编程和线程

一、网络

(1)Unix 和 liunx是网络处理最好的操作系统。

(2)网络必须要有网卡才能进行网络的连接。

(3)原来网络走线方式,上网和电话线进入终端后一根线连接入户,这根线连接到数据分离器,分为ADLS端口和电话,再接收回来时,进过分离器传输到终端判断一下进入各自的线路。

二、网络分为广域网、城域网、局域网

中国最大的网络是国家骨干网,中国移动、联通、电信,都是靠骨干网分下来的网速。

1.广域网,在骨干网上拥有独立的IP地址。

2.城域网,一个城市所有联网用户共用一个IP地址。

3.局域网,每户把家里网络通过路由器连接多台设备。

电信采用的是每家每户都是独立的ip地址。广域网的IP地址就可对每台计算机独立的进行通讯。

三、IP地址

(1)IP地址:是由数字组成的地址号。

(2)IP是来确定是哪台计算机。

(3)IP地址分为IPv4和IPv6。

(4)查看电脑IP。

(5)Ping是一个程序,是跟对方的程序进行一个交互,如果对方没开就不能成功 查看运行速度。

四、端口

(1)端口是一个数字。

(2)端口的作用是用来确定一台计算机的某一个应用程序的。

(3)端口是怎么进行传输的?

有两台电脑,一台电脑的IP是11.15.16.222需要向11.15.223传输数据,如果没有端口的话,你这里传出的数据就不知道给谁接收。如果写上端口的话,电脑就会寻找4040这个端口程序来进行传输。

(4)端口是用于区分网络程序。

(5)一个端口可以给不同协议占用,但是不可以给同一个协议占用。比如一个端口8080给TCP占用也可以给YDP占用,但是8080这个端口不能给两个同样的协议占用。

(6)4000以上的端口都可以申请,4000以下为系统保留端口

五、端口映射

1.手动映射:

(1)现在有两个人一个人用的是电信网络,接入的是ADSL拨号上网,IP地址是55.6.4.2。另一个人用的也是电信ADSL拨号上网,但是连接到了路由器IP地址为55.6.4.3,由路由器给电脑分配了一个局域网的IP地址为192.168.1.55.

(2)为什么192.168.1.55计算机找55.6.4.2计算机非常容易就可以找到? 因为182.168.1.55这台计算机,只需要输入55.6.4.2这台计算机的IP:55.6.4.2和端口号8888对应就可以访问了,因为55.6.4.2是广域网里面的IP是独立的,所以很容易就可以访问。

(3)而当55.6.4.2计算机想访问192.168.1.55计算机就非常困难呢? 因为55.6.4.2:9999计算机想访问182.168.1.55计算机的9999端口时,因为一个是广域网的IP地址,一个是局域网的IP地址,他们不能相互进行访问,广域网IP地址只能访问广域网的IP地址。如果是访问55.6.4.3.9999的话也是不行的,因为这个地址是路由器的地址跟电脑的IP地址没有关系,所以也连接不到。

(4)怎么样解决55.6.4.2计算机连接192.168.1.55的计算机的问题? 在路由器中会有一个叫转发策略的东西。什么是转发策略?转发策略就是在路由器中会生成一个对外端口假设为19999,然后让他转发到192.168.1.55:9999的端口上,这样外界只要输入55.6.4.3.19999在经过路由器是就会触发转发转换成192.168.1.55.9999的IP端口就可以收到消息,这就称为端口映射。

2.自动映射

(1)自动映射的意思是:局域网内的程序去访问网络,路由器会自动给你程序带上一个端口映射,这样广域网的服务器就可以给你回执消息。

比如一台计算机要浏览网页,就需要先访问路由器,路由器访问光纤猫,光纤猫访问广域网,广域网访问kaige123的网页服务器。

电脑的IP地址是192.168.1.55在需要浏览网页的时候,经过路由器,路由器自动把这个IP换成路由器的IP和需要访问Kaige123服务器的端口号20014即(61.5.4.3:20014),直接访问对方的服务器,kaige123的服务器就把相应的数据传送回路由器,路由器就就自动转换成电脑的IP地址,传输数据给电脑。

(2)下图就是一个端口映射

六、DNS

1.DNS就是域名解析器,域名解析就是查询出这个域名的IP地址。

2.域名是如何进行解析?

在本省最近的地方会有一个域名解析器。

3.网页域名可以在万网上买

4.在网页中比如输入http://kaige123.com这个域名的时候,就会进行域名解析为IP地址查询出来,然后反馈给这个网页系统,系统拿到这个IP就会对服务器进行访问,网页的默认端口是80。

5.域名篡改?

在计算机中,有本地域名缓存,这里面的域名是每10分钟更新一次,10分钟内不更新。这样的话会对服务器减少一些压力,一些不法的服务器会篡改本地域名缓存。

6.如何清除本地解析缓存?

用ipconfig / flushdns来清楚缓存

七、DNS智能解析

解析最近的服务器,根据是什么网络,什么地区,智能的解析,分布到最近最快的服务器上。

八、中国网络运营商

联通的网络是城域网分配给每个用户,用户需要访问联通服务器的时候就要经过联通的交换机把IP地址10.5.6.4自动映射为61.5.5.4然后再到通讯服务器。电信的IP:61.5.5.123是独立的IP地址,所以可以直接连接到通讯服务器。

(1)这个时候10.5.6.4的计算机想连接到61.5.5.123的计算机可以吗?

是可以连接到,因为电信每台电脑是独立的IP也就没有一些防御的措施。

(2)那61.5.5.123计算机可以连接到10.5.6.4的计算机上吗?

这个是不行,因为电信的IP:61.5.5.123是广域网的,而计算机10.5.6.4是联通的城域网,你的计算机每次要经过映射到广域网,别人想通过联通映射好的端口直接折回信息到电脑联通是不要的,不予许通过。

九、VPN

1.VPN叫做个人专属网络。

2.VPN就是用远程的电脑来上网。

3.比如当前上网来连接Facebook是连接不上的,这个时候就需要VPN技术来连接香港的主机,用这台主机来请求当前环境中Facebook的网页,这就称之为FQ、也是VPN技术。

VPN的服务器可以在万网中购买。

十、VPS个人专属服务器

VPS就是虚拟服务器。

十一、集群

1.集群里面有负载均衡器和防火墙。

2.负载均衡器:将闲置的请求分配到闲置的主机上操作。

服务器分为:1u、2u、3u U在服务器中指的是机架式服务器的厚度。

集群:让服务器集合在一起为更多的客户服务,分担客户的访问。

集群服务器的好处:是可以减少、添加服务器,流量可以转移到下一个服务器上。

3.防火墙:是控制来的访问是否符合防火墙的规则,不符合就拒绝来访问。防止不规则访问。

十二、TCP

1.TCP叫做可靠的传输协议,也叫套接字。

TCP对服务器进行连接,可以保持长时间连接不断开,只是需要先询问能不能连接,连接的上接下来就可以进行通讯,TCP能绝对保证数据送达到对方计算机上,如果文件有损坏,TCP就会补发。TGP需要对方的计算机也同时在线,才能传输文件。

2.UDP叫做不可靠的传输协议,也叫报文。

UDP就是不管对方的计算机在不在线,只管法送文件,不管你能不能收到,发送的数据有限制,但是速度比较快。

时间: 2024-10-11 21:37:24

网络编程和线程的相关文章

python网络编程基础(线程与进程、并行与并发、同步与异步)

python网络编程基础(线程与进程.并行与并发.同步与异步) 目录 线程与进程 并行与并发 同步与异步 线程与进程 进程 前言 进程的出现是为了更好的利用CPU资源使到并发成为可能. 假设有两个任务A和B,当A遇到IO操作,CPU默默的等待任务A读取完操作再去执行任务B,这样无疑是对CPU资源的极大的浪费.聪明的老大们就在想若在任务A读取数据时,让任务B执行,当任务A读取完数据后,再切换到任务A执行.注意关键字切换,自然是切换,那么这就涉及到了状态的保存,状态的恢复,加上任务A与任务B所需要的

《网络编程》线程

线程基本函数 当一个程序被启动时,只有一个主线程,若要实现对其他线程的基本操作,首先必须创建新的线程,新的线程创建可以使用 pthread_create 函数实现,该函数的 API 定义如下: /* 函数功能:创建新的线程: * 返回值:若成功则返回0,若出错则返回正的错误码: * 函数原型: */ #include <pthread.h> int pthread_create(pthread_t *tid, const pthread_attr_t *attr, void*(*func)(v

py2/py3区别, 列表生成式, 网络编程, socketserver, 线程, uuid模块

一. py2/py3区别    - 编码&字符串        字符串:            py2:                unicode         v = u"root"    本质上用unicode存储(万国码)                (str/bytes)     v = "root"     本质用字节存储            py3:                str                v = "

服务器端网络编程之线程模型

上一篇文章<服务器端网络编程之 IO 模型>中讲到服务器端高性能网络编程的核心在于架构,而架构的核心在于进程-线程模型的选择.本文将主要介绍传统的和目前流行的进程-线程模型,在讲进程-线程程模型之前需要先介绍一种设计模式: Reactor 模式,不明白的看这里<设计模式详解>,文中有一句话对 Reactor 模式总结的很好,引用下. Reactor 模式首先是事件驱动的,有一个或多个并发输入源,有一个Service Handler,有多个Request Handlers:这个Ser

Python网络编程之线程与进程

What is a Thread? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位,一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. 在同一个进程内的线程的数据是可以进行互相访问的. 线程的切换使用过上下文来实现的,比如有一本书,有a和b这两个人(两个线程)看,a看完之后记录当前看到那一页哪一行,然后交给b看,b看完之后记录当前看到了那一页哪一行,此时a又要看了,那么a就通过上次记录的值(上下文)直接找到上次

day33 网络编程之线程,并发

概要: 1 并发编程需要掌握的知识点: 2 开启进程/线程 3 生产者消费者模型!!! 4 GIL全局解释器锁(进程与线程的区别和应用场景) 5 进程池线程池 6 7 IO模型(理论) 8 9 10 1 多线程 11 线程的概念? 12 一个进程内默认就会有一个控制线程,该控制线程可以执行代码从而创建新的线程 13 该控制线程的执行周期就代表改进程的执行周期 14 线程VS进程 15 1.线程的创建开销小于进程,创建速度快 16 2.同一进程下的多个线程共享该进程的地址空间 17 GIL全局解释

Linux网络编程视频 百度网盘

Linux网络编程(总共41集)讲解Linux网络编程知识,分以下四个篇章.Linux网络编程之TCP/IP基础篇Linux网络编程之socket编程篇Linux网络编程之进程间通信篇Linux网络编程之线程篇Linux网络编程之TCP/IP基础篇01TCPIP基础(一)ISO/OSI参考模型TCP/IP四层模型基本概念(对等通信.封装.分用.端口)02TCPIP基础(二)最大传输单元(MTU)/路径MTU以太网帧格式ICMPARPRARP03TCPIP基础(三)IP数据报格式网际校验和路由04

(转)iOS 各种网络编程总结--进程、线程、Socket、HTTP、TCP/IP、TCP和UDP

######################################################### 进程与线程 进程和线程都是由操作系统分配和调度的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性. 进程是一块包含了某些资源的内存区域.操作系统利用进程把它的工作划分为一些功能单元.进程中所包含的一个或多个执行单元称为线程(thread).进程还拥有一个私有的虚拟地址空间,该空间仅能被它所包含的线程访问. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更

linux网络编程学习笔记之五 -----并发机制与线程?

进程线程分配方式 简述下常见的进程和线程分配方式:(好吧,我仅仅是举几个样例作为笔记...并发的水太深了,不敢妄谈...) 1.进程线程预分配 简言之,当I/O开销大于计算开销且并发量较大时,为了节省每次都要创建和销毁进程和线程的开销.能够在请求到达前预先进行分配. 2.进程线程延迟分配 预分配节省了处理时的负担,但操作系统管理这些进程线程也会带来一定的开销.由此,有个折中的方法是,当某个处理须要花费较长时间的时候,我们创建一个并发的进程或线程来处理该请求.实现也非常easy,在主线程中定时,定