电话号码和IP地址不一样,IP地址必须在主机或路由器中设定,如果设备在网络中移动的话,那么IP地址也需要随之改变。所有的国家都有他们自己的一套号码方案来,具体安排国内电话号码的结构。这一节我们将举例介绍美国和加拿大使用的北美号码方案。大约在1960年以前,所有的北美电话号码都是七位数字。前三位数字是局号,用来识别PSTN中的中心局用交换机。后四位数字是用户分机号码,识别本地环路连接在交换机上的端口。如果一个人要打长途电话,他必须在电话上先拨0,告诉操作员要拨打电话的城市和七位电话号码,然后拿着电话等着接通。像这样用人工来操作,交换机处理一个从美国东海岸到西海岸的电话,需要横跨美国大陆,一条干线一条干线地接续,从一个操作员到另一个操作员,大约要花费十分钟。很明显在电话接通之前的整个过程中电话公司不会获得任何收入,而干线却要占用很多时间。
于是在60年代早期,贝尔系统引入了长途区号,或者称作编号分配计划(NPA)。初始的十位NPA系统中,第一位N必须是2到9之间的一个数字,第二位是0或1,第三位X可以是0到9之间的任一个数字,这样初始的NPA系统就有了一个N0/1X的结构。由于局号是NNX的结构,意味着在本地电话中前三位不能出现0或1,这样就很容易识别出用户什么时候拨打长途电话,也使得长途电话能够很快发送到特定的长途干线上,电话呼叫的建立更加迅速,很多电话都可以在短时间内接通。虽然有一些号码是按规定出于某种特定目的而预留下来的(比如99XX号码通常在内部使用),但电话号码的后四位数字通常具有XXXX结构。而所有以0或1开头的都是些特殊的电话,既不属于本地电话也不属于长途电话。
在美国的一些地区特别是那些大城市,NNX结构严重地限制着中心局的数量。为了解决这一问题,从1971年开始在这些地区并不是增加许多新的地区号码,而是开始使用NXX结构,允许用户在打本地电话时可以在第二位拨0或1,这就使得本地电话和长途电话难以区分。于是在这些地区要求用户打长途电话时必须在前面加一个1,把电话号码加长到11位。有人可能会问是不是一直到用户拨了七位或十位数字之后交换机才有反应,实际上并非如此,在拨号之前号码记发器就已经准备好了。由于大多数电话都是本地电话,所以缺省号码值是七位。而且由于等待所有号码都拨完会减慢接通速度,用户有时在拨号时会暂停等原因,必须要事先准备好号码记发器。
今天,由于Internet接入、移动电话服务等“第二电话网络”的竞争给长途区号结构带来了很大压力。在1995年,北美号码计划正式允许NPA系统使用NXX结构。在许多地区用户别无选择,任何时候都要拨满十位数字,即使给邻居打电话也要这样。表3-6中给出了北美电话号码计划的发展过程。
表3-6北美电话号码计划
注:n=2到9,x=0到9
竞争压力使得PSTN必须不断地扩展地址空问。但是既然用户仍然要拨号码,增加三四位新数字并不是好的解决方法。还有那么多电话号码资源可以使用,增加长途区号的数量也只是一个暂时的解决方法。例如:加利福尼亚1995年时有13个长途区号,1999年需要26个,到2001年将达到40个。