问一个关于计算机端口的问题
请问我这么理解端口可不可以:如果把一个IP地址比作成一个屋子,那么端口就是这个屋子的一个个可以与外通信的小窗口,譬如FTP的端口是21,HTTP的端口80?   
 请问我这么理解可以吗?     
 ========== 
 我现在还有几个疑问:端口是不是一定是系统软件出厂前都给规定好了的,譬如80端口就是负责HTTP网络通信,21端口就是用来负责FTP,他们之间作用不能混淆??   
 但事实好像不是这样,譬如我现在把我的IIS端口由80修改为21,然后访问我的: 
 http://localhost,   程序依然可以打开页面?? 
 那既然可以互相乱改,那一开始的规定0--1023的端口作用又有什么作用啊?     
 谢谢~!!
------解决方案--------------------你可以自己设置自己开放的端口(只要没有用的都可以) 
 但是最好用默认的 
 比如FTP 是 21  
 别人进你的FTP就不用打端口号了 
 再如HTTP是80 
 你改成1234后别人就要 
 www.xxx.com:1234  了
------解决方案--------------------//如果把一个IP地址比作成一个屋子,那么端口就是这个屋子的一个个可以与外通信的小窗口   
 计算机是一个屋子,IP地址是门牌号,屋子的门、窗是各种服务,端口号只是这些服务的抽象化。默认情况下我们会从门进屋子,但是如果你想从窗户进屋子也是可以的。
------解决方案--------------------基本上是这样的,但是像80端口就是负责HTTP网络通信,21端口就是用来负责FTP等等都是为了人们的习惯而潜意识的规定的,大家都按照这个操作去做就默认了。你要是改端口也没什么,如果别人访问默认的那个端口的话就会出现问题了。如果他知道端口号也无所谓。 
------解决方案--------------------你的理解是对的    
 1234这个端口号是服务器的端口号    
 至于你自己的电脑发起连接的端口号自己是看不到的 一般是1024以上的