24小时热门版块排行榜    

查看: 2196  |  回复: 27

xmcrobbie

银虫 (小有名气)

引用回帖:
14楼: Originally posted by 木易山水 at 2013-10-08 08:59:44
谢谢您的回答,不过还是有几个问题想请问下
1:如果A进程使用了tcp协议的1000端口,B进程就不能用了。是不是说一个进程对应一个端口?
2:程序是静态的概念,进程是动态的概念。这话没明白什么意思。。。。。...

1.进程和端口没有对应关系,一个进程可以同时使用好几个端口呢。但是这些端口被close之前,其他的进程不能用。另外注意,tcp 的1000端口和udp的1000端口是两个端口。也就是说A进程用了tcp的1000端口,B进程不能使用tcp 1000端口,但是可以用udp的1000端口。
2.程序呢,就是存储在外部存储器(比如硬盘,U盘)的代码和数据,把这些代码和数据调到内存里运行,就成了进程。比如QQ程序,QQ目录下的那些文件都可以看成是程序,当你运行QQ的时候,这些代码和数据就在内存里了,就成了进程。一个QQ程序可以对应多个QQ进程,比如你同时用两个号码登陆。你硬盘上只安装了一个QQ程序,但是此时有两个QQ进程。
21楼2013-10-08 16:56:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木易山水

金虫 (小有名气)

引用回帖:
16楼: Originally posted by 奔跑2013 at 2013-10-08 13:38:20
问题一:
协议  本地地址          外部地址        状态           PID
TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       736
TCP    0.0.0.0:443            0.0.0.0:0              L ...

感谢您详细的说明,想请问下,为什么访问的时候不直接面向进程,何须多一个端口,这样有什么优势吗?
大师远去,新的一代正在成长
22楼2013-10-20 19:59:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木易山水

金虫 (小有名气)

引用回帖:
20楼: Originally posted by zzhlgzz at 2013-10-08 14:30:28
网络上的一个主机(计算机)可以有多个IP(多穴主机),一个进程为什么不能有多个Port?

一个计算机可以由多个ip?这应该不是我们不是普通的计算机吧?
大师远去,新的一代正在成长
23楼2013-10-20 20:03:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木易山水

金虫 (小有名气)

引用回帖:
21楼: Originally posted by xmcrobbie at 2013-10-08 16:56:57
1.进程和端口没有对应关系,一个进程可以同时使用好几个端口呢。但是这些端口被close之前,其他的进程不能用。另外注意,tcp 的1000端口和udp的1000端口是两个端口。也就是说A进程用了tcp的1000端口,B进程不能使用 ...

bingo,多谢!
大师远去,新的一代正在成长
24楼2013-10-20 20:04:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

奔跑2013

银虫 (正式写手)

【答案】应助回帖

引用回帖:
22楼: Originally posted by 木易山水 at 2013-10-20 19:59:22
感谢您详细的说明,想请问下,为什么访问的时候不直接面向进程,何须多一个端口,这样有什么优势吗?...

你的这个问题三言两语讲不清楚,建议去学习下tcp/ip参考模型方面的具体知识。

[ 发自小木虫客户端 ]
25楼2013-10-20 21:21:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xmcrobbie

银虫 (小有名气)

【答案】应助回帖

引用回帖:
22楼: Originally posted by 木易山水 at 2013-10-20 19:59:22
感谢您详细的说明,想请问下,为什么访问的时候不直接面向进程,何须多一个端口,这样有什么优势吗?...

如果一个进程用了好几个端口,你要和哪个端口通讯?进程之间有哪些通讯方式,建议楼主先多看书和有关代码吧。否则别人很难几句话讲清楚的!也建议你多看一些书再来讨论吧。

[ 发自小木虫客户端 ]
26楼2013-10-21 18:42:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ubosword

木虫 (小有名气)

【答案】应助回帖

引用回帖:
10楼: Originally posted by 木易山水 at 2013-10-08 08:42:45
1:进程和端口号不是一一对应关系。请问能不能有一个具体的例子啊?究竟是一个进程对应多个端口还是一个端口对应进程?
2:应用程序指的是日常说的软件,进程是由应用程序运行后在系统产生的。您的这个解释比较好 ...

可以这样来解释:
1. 在ftp连接就需要打开20和21号端口分别进行连接和数据服务,这就是一个进程对应多个端口号的例子。在并发通信中,通过fork产生子进程,而父进程则一直使用相同的端口来监听下一个子进程的连接,这就可以广义的理解为一个端口对应多个进程。
2. 你这个例子是对的,针对同一个应用程序,可以打开多个进程,因为不同的进程会有不同的连接方,也就对应了不用的端口和ip地址。
27楼2013-10-22 10:57:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cyh407114469

新虫 (初入文坛)

【答案】应助回帖

ip地址是在ip协议头中指出的,端口号在TCP或者UDP协议头中指出的。
ip地址和端口号都是通过socket指定的。socket是一个整型数,用于指定了一个内核对象,内核对象是一个数据结构,里面保存的这个socket要通信的本地ip地址、本地端口号、远程ip地址、远程端口号,这四个中只要有一个不一样,就说明是不同的socket。不同的进程是可以使用同一个socket的,只要知道标识socket的那个整型数就可以了。
端口只是一个编号,不是开关,不过可以通过端口号过滤掉不需要的网络数据流或数据报
程序是没有运行的一堆数据,通常保存在硬盘;而进程是在计算机中运行的,进程有CPU的使用权
远程访问一台计算机可以使用任意端口,只要远程机器的那个端口是被开启的,被开启的意思是有远程机器上程序在那个端口上接收你的访问指令
搞学术就是生活,生活就是搞学术
28楼2013-10-22 18:40:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 木易山水 的主题更新
信息提示
请填处理意见