Claims
- 1. A method for performing IP telephony with an IP telephone, comprising:
activating the IP telephone; performing client DHCP lease negotiation with the IP telephone, wherein an identifier of the IP telephone is used to determine a range of port numbers assigned to the IP telephone, wherein the range of port numbers comprises one or more port numbers which are not reserved for use by other IP protocols; initializing the IP telephone; registering the IP telephone; and performing IP communications using the IP telephone; wherein said performing IP communications uses one or more ports in the range of assigned ports.
- 2. The method of claim 1, wherein said identifier is comprised in a DHCP discover message issued by the IP telephone, wherein said performing client DHCP lease negotiation comprises:
issuing a DHCP offer to the IP telephone if the identifier is determined to be valid, wherein the DHCP offer comprises DHCP lease information based on the validated identifier; the IP telephone issuing a DHCP request in response to the issued DHCP offer; storing the DHCP lease information in response to the issued DHCP request; the IP telephone storing the DHCP lease information; and the IP telephone enabling DHCP settings comprised in the DHCP lease information.
- 3. The method of claim 2,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein said initializing the IP telephone comprises:
the IP telephone executing the indicated operational software to enable said IP communications.
- 4. The method of claim 2,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein said initializing the IP telephone comprises:
the IP telephone issuing a request for the operational software; providing the operational software to the IP telephone in response to the issued request; and the IP telephone executing the provided operational software to enable said IP communications.
- 5. The method of claim 4, wherein the IP telephone issuing the request for the operational software comprises issuing a read request to a file transfer server, wherein said file transfer server performs said providing the operational software to the IP telephone.
- 6. The method of claim 5, wherein the file transfer server comprises a TFTP (Trivial File Transfer Protocol) server.
- 7. The method of claim 1, wherein said registering the IP telephone comprises:
the IP telephone sending a public IP address of the IP telephone; and receiving and storing the public IP address of the IP telephone.
- 8. The method of claim 7, wherein said registering the IP telephone further comprises:
the IP telephone sending a private IP address of the IP telephone; and receiving and storing the private IP address of the IP telephone; wherein said public IP address and said port range are useable to determine said private IP address.
- 9. The method of claim 1, wherein said performing IP communications using the IP telephone comprises:
receiving a data packet from the IP telephone, wherein the data packet comprises a private source IP address, a source port number, and destination information associated with an IP device, and wherein said source port number is in the assigned range of port numbers; performing a network address persistent port translation (NAPPT) on the data packet; and sending the data packet to the IP device.
- 10. The method of claim 9, further comprising performing the following steps prior to said receiving said packet:
receiving the identifier from the IP telephone; determining if the identifier is valid; and if the identifier is valid, assigning the range of port numbers to the IP telephone based on the identifier, wherein the IP telephone is operable to use at least a subset of the range of port numbers to send or receive IP communications.
- 11. The method of claim 10, wherein the identifier comprises a vendor class identifier.
- 12. The method of claim 10, wherein said determining comprises:
determining if a MAC ID for the IP telephone is valid; and if the MAC ID is determined to be valid, then determining if the identifier is valid.
- 13. The method of claim 9, wherein said performing a network address persistent port translation (NAPPT) on the data packet comprises changing the private source IP address to a public source IP address while leaving the source port number unchanged, and wherein the public source IP address and the source port number may be used to uniquely identify the IP telephone.
- 14. The method of claim 1, wherein said performing IP communications using the IP telephone comprises:
receiving a data packet from the IP device, wherein the data packet comprises a public destination IP address, a destination port number, and source information, wherein said destination port number is in the assigned range of port numbers and wherein the public destination IP address and the destination port number may be used to uniquely identify the IP telephone; performing a network address persistent port translation (NAPPT) on the data packet; and sending the data packet to the IP telephone.
- 15. The method of claim 14, wherein said performing a network address persistent port translation (NAPPT) on the data packet received from the destination comprises using the public destination IP address and the destination port number to uniquely identify the IP telephone, and changing the public destination IP address to a private source IP address of the IP telephone while leaving the destination port number unchanged.
- 16. A system for performing IP telephony, comprising:
a network; an IP telephone; a Service Gateway, operable to couple to the IP telephone through the network; and a Media Gateway Controller, operable to couple to the Service Gateway and the IP telephone through the network; wherein the IP telephone and the Service Gateway are operable to negotiate a DHCP lease, wherein said DHCP lease negotiation comprises the Service Gateway assigning a range of port numbers to the IP telephone based on an identifier of the IP telephone; wherein the IP telephone and the Service Gateway are operable to initialize the IP telephone; wherein the Media Gateway Controller is operable to register the IP telephone; wherein the IP telephone is operable to perform IP communications using one or more ports in the range of assigned ports; and wherein the Service Gateway is further operable to perform NAPPT on data packets sent to and from the IP telephone in said IP communications.
- 17. The system of claim 16, wherein, in said IP telephone and the Service Gateway being operable to negotiate the DHCP lease:
the IP telephone is operable to issue a DHCP discover message to the Service Gateway, wherein said DHCP discover message comprises the identifier; the Service Gateway is operable to issue a DHCP offer to the IP telephone if the identifier is determined to be valid, wherein the DHCP offer comprises DHCP lease information based on the validated identifier; the IP telephone is operable to issue a DHCP request in response to the issued DHCP offer; the Service Gateway is operable to store the DHCP lease information in response to the issued DHCP request; and the IP telephone is operable to store the DHCP lease information and enable DHCP settings comprised in the DHCP lease information.
- 18. The system of claim 17,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone; wherein, in initializing the IP telephone, the IP telephone is operable to execute the indicated operational software to enable said IP communications.
- 19. The system of claim 17,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone; wherein, in initializing the IP telephone:
the IP telephone is operable to issue a request for the operational software; the Service Gateway is operable to provide the operational software to the IP telephone in response to the issued request; and the IP telephone is operable to execute the provided operational software to enable said IP communications.
- 20. The system of claim 19, the system further comprising:
a file transfer server; wherein, in issuing the request for the operational software, the IP telephone is operable to issue a read request to the file transfer server; and wherein said file transfer server is operable to provide the operational software to the IP telephone.
- 21. The system of claim 20, wherein the file transfer server comprises a TFTP (Trivial File Transfer Protocol) server.
- 22. The system of claim 16, wherein, in registering the IP telephone, the Media Gateway Controller is operable to:
receive a public IP address of the IP telephone from the IP telephone; and store the public IP address of the IP telephone.
- 23. The system of claim 22, wherein, in registering the IP telephone, the Media Gateway Controller is further operable to:
receive a private IP address of the IP telephone from the IP telephone; and store the private IP address of the IP telephone. wherein said public IP address and said port range are useable to determine said private IP address.
- 24. The system of claim 16, wherein the range of port numbers comprises one or more port numbers which are not reserved for use by other IP protocols.
- 25. The system of claim 16, wherein, in performing NAPPT on data packets sent to and from the IP telephone the Service Gateway is operable to:
receive a data packet from the IP telephone, wherein the data packet comprises a private source IP address, a source port number, and destination information associated with an IP device, and wherein said source port number is in the assigned range of port numbers; perform a network address persistent port translation (NAPPT) on the data packet; and send the data packet to the IP device.
- 26. The system of claim 25, wherein said performing a network address persistent port translation (NAPPT) on the data packet comprises changing the private source IP address to a public source IP address while leaving the source port number unchanged, and wherein the public source IP address and the source port number may be used to uniquely identify the IP telephone.
- 27. The system of claim 25, wherein, in said negotiating said DHCP lease, the Service Gateway is further operable to:
receive the identifier from the IP telephone; determine if the identifier is valid; and if the identifier is valid, assign the range of port numbers to the IP telephone based on the identifier; wherein the IP telephone is operable to use at least a subset of the range of port numbers to send or receive IP communications.
- 28. The system of claim 27, wherein the identifier comprises a vendor class identifier.
- 29. The system of claim 27, wherein, in said determining the Service Gateway is operable to:
determine if a MAC ID for the IP telephone is valid; and if the MAC ID is determined to be valid, then determine if the identifier is valid.
- 30. The system of claim 16, wherein, in performing NAPPT on data packets sent to and from the IP telephone the Service Gateway is operable to:
receive a data packet from the IP device, wherein the data packet comprises a public destination IP address, a destination port number, and source information, wherein said destination port number is in the assigned range of port numbers and wherein the public destination IP address and the destination port number may be used to uniquely identify the IP telephone; perform a network address persistent port translation (NAPPT) on the data packet; and send the data packet to the IP telephone.
- 31. The system of claim 30, wherein said performing a network address persistent port translation (NAPPT) on the data packet received from the destination comprises using the public destination IP address and the destination port number to uniquely identify the IP telephone, and changing the public destination IP address to a private source IP address of the IP telephone while leaving the destination port number unchanged.
- 32. One or more memory mediums, wherein the one or more memory mediums store program instructions which are executable to perform:
a) performing client DHCP lease negotiation with the IP telephone, wherein an identifier of the IP telephone is used to determine a range of port numbers assigned to the IP telephone; b) initializing the IP telephone; c) registering the IP telephone; and d) performing IP communications using the IP telephone; wherein said performing IP communications uses one or more ports in the range of assigned ports.
- 33. The memory medium of claim 32, wherein said identifier is comprised in a DHCP discover message issued by the IP telephone, wherein said performing client DHCP lease negotiation comprises:
e) issuing a DHCP offer to the IP telephone if the identifier is determined to be valid, wherein the DHCP offer comprises DHCP lease information based on the validated identifier; f) the IP telephone issuing a DHCP request in response to the issued DHCP offer; g) storing the DHCP lease information in response to the issued DHCP request; h) the IP telephone storing the DHCP lease information; and i) the IP telephone enabling DHCP settings comprised in the DHCP lease information.
- 34. The memory medium of claim 33, wherein said program instructions comprise Service Gateway program instructions, and wherein said Service Gateway program instructions are executable to perform steps (e) and (g).
- 35. The memory medium of claim 33, wherein said program instructions comprise IP telephone program instructions, and wherein said IP telephone program instructions are executable to perform steps (f), (h), and (i).
- 36. The memory medium of claim 33,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein said initializing the IP telephone comprises:
j) the IP telephone executing the indicated operational software to enable said IP communications.
- 37. The memory medium of claim 36, wherein said program instructions comprise IP telephone program instructions, and wherein said IP telephone program instructions are executable to perform step (j).
- 38. The memory medium of claim 33,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein said initializing the IP telephone comprises:
k) the IP telephone issuing a request for the operational software; l) providing the operational software to the IP telephone in response to the issued request; and m) the IP telephone executing the provided operational software to enable said IP communications.
- 39. The memory medium of claim 38, wherein said program instructions comprise Service Gateway program instructions, and wherein said Service Gateway program instructions are executable to perform step (1).
- 40. The memory medium of claim 38, wherein said program instructions comprise IP telephone program instructions, and wherein said IP telephone program instructions are executable to perform steps (k) and (m).
- 41. The memory medium of claim 38,
wherein the IP telephone issuing the request for the operational software comprises issuing a read request to a file transfer server; and wherein said file transfer server performs said providing the operational software to the IP telephone.
- 42. The memory medium of claim 41, wherein the file transfer server comprises a TFTP (Trivial File Transfer Protocol) server.
- 43. The memory medium of claim 32, wherein said registering the IP telephone comprises:
n) the IP telephone sending a public IP address of the IP telephone; and o) receiving and storing the public IP address of the IP telephone.
- 44. The memory medium of claim 43, wherein said program instructions comprise IP telephone program instructions, and wherein said IP telephone program instructions are executable to perform steps (n).
- 45. The memory medium of claim 43, wherein said program instructions comprise Media Gateway Controller program instructions, and wherein said Media Gateway Controller program instructions are executable to perform step (o).
- 46. The memory medium of claim 43, wherein said registering the IP telephone further comprises:
p) the IP telephone sending a private IP address of the IP telephone; and q) receiving and storing the private IP address of the IP telephone; wherein said public IP address and said port range are useable to determine said private IP address.
- 47. The memory medium of claim 46, wherein said program instructions comprise IP telephone program instructions, and wherein said IP telephone program instructions are executable to perform steps (p).
- 48. The memory medium of claim 46, wherein said program instructions comprise Media Gateway Controller program instructions, and wherein said Media Gateway Controller program instructions are executable to perform step (q).
- 49. The memory medium of claim 32, wherein the range of port numbers comprises one or more port numbers which are not reserved for use by other IP protocols.
- 50. The memory medium of claim 32, wherein said performing IP communications using the IP telephone comprises:
r) receiving a data packet from the IP telephone, wherein the data packet comprises a private source IP address, a source port number, and destination information associated with an IP device, and wherein said source port number is in the assigned range of port numbers; s) performing a network address persistent port translation (NAPPT) on the data packet; and t) sending the data packet to the IP device.
- 51. The memory medium of claim 50, wherein said program instructions comprise Service Gateway program instructions, and wherein said Service Gateway program instructions are executable to perform step (r), (s), and (t).
- 52. The memory medium of claim 50, wherein said performing a network address persistent port translation (NAPPT) on the data packet comprises changing the private source IP address to a public source IP address while leaving the source port number unchanged, and wherein the public source IP address and the source port number may be used to uniquely identify the IP telephone.
- 53. The memory medium of claim 32, wherein said performing IP communications using the IP telephone comprises:
u) receiving a data packet from the IP device, wherein the data packet comprises a public destination IP address, a destination port number, and source information, wherein said destination port number is in the assigned range of port numbers and wherein the public destination IP address and the destination port number may be used to uniquely identify the IP telephone; v) performing a network address persistent port translation (NAPPT) on the data packet; and w) sending the data packet to the IP telephone.
- 54. The memory medium of claim 53, wherein said program instructions comprise Service Gateway program instructions, and wherein said Service Gateway program instructions are executable to perform step (u), (v), and (w).
- 55. The memory medium of claim 53, wherein said performing a network address persistent port translation (NAPPT) on the data packet received from the destination comprises using the public destination IP address and the destination port number to uniquely identify the IP telephone, and changing the public destination IP address to a private source IP address of the IP telephone while leaving the destination port number unchanged.
- 56. The memory medium of claim 50, further comprising performing the following steps prior to said receiving said packet:
x) receiving the identifier from the IP telephone; y) determining if the identifier is valid; and z) if the identifier is valid, assigning the range of port numbers to the IP telephone based on the identifier, wherein the IP telephone is operable to use at least a subset of the range of port numbers to send or receive IP communications.
- 57. The memory medium of claim 56, wherein said program instructions comprise Service Gateway program instructions, and wherein said Service Gateway program instructions are executable to perform step (x), (y), and (z).
- 58. The memory medium of claim 56, wherein the identifier comprises a vendor class identifier.
- 59. The memory medium of claim 56, wherein said determining comprises:
determining if a MAC ID for the IP telephone is valid; and if the MAC ID is determined to be valid, then determining if the identifier is valid.
- 60. A plurality of memory mediums, comprising:
an IP telephone memory medium storing IP telephone program instructions; a Service Gateway memory medium storing Service Gateway program instructions; and a Media Gateway Controller memory medium storing Media Gateway Controller program instructions; wherein the IP telephone program instructions and the Service Gateway program instructions are executable to perform:
performing client DHCP lease negotiation for the IP telephone, wherein an identifier of the IP telephone is used to determine a range of port numbers assigned to the IP telephone; and initializing the IP telephone; wherein the IP telephone program instructions and the Media Gateway Controller program instructions are executable to register the IP telephone; and wherein the IP telephone program instructions, the Service Gateway program instructions, and the Media Gateway Controller program instructions are executable to perform IP communications using the IP telephone, and wherein said performing IP communications uses one or more ports in the range of assigned ports.
- 61. The memory medium of claim 60, wherein, in performing said client DHCP lease negotiation:
the IP telephone program instructions are executable to issue a DHCP discover message, wherein the identifier is comprised in the DHCP discover message; the Service Gateway program instructions are executable to issue a DHCP offer to the IP telephone if the identifier is determined to be valid, wherein the DHCP offer comprises DHCP lease information based on the validated identifier; the IP telephone program instructions are executable to:
issue a DHCP request in response to the issued DHCP offer; store the DHCP lease information and enable DHCP settings comprised in the DHCP lease information; and the Service Gateway program instructions are executable to store the DHCP lease information in response to the issued DHCP request.
- 62. The memory medium of claim 61,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein, in said initializing the IP telephone, the IP telephone program instructions are executable to execute the indicated operational software to enable said IP communications.
- 63. The memory medium of claim 61,
wherein said DHCP lease information includes the range of port numbers and information indicating operational software for the IP telephone, wherein, in said initializing the IP telephone:
the IP telephone program instructions are executable to issue a request for the operational software; the Service Gateway program instructions are executable to provide the operational software to the IP telephone in response to the issued request; and the IP telephone program instructions are executable to execute the provided operational software to enable said IP communications.
- 64. The memory medium of claim 63, wherein said plurality of memory mediums further comprises a file transfer server memory medium storing file transfer server program instructions;
wherein said issuing the request for the operational software comprises issuing a read request to a file transfer server; and wherein said file transfer server program instructions are executable to provide the operational software to the IP telephone.
- 65. The memory medium of claim 64, wherein the file transfer server comprises a TFTP (Trivial File Transfer Protocol) server.
- 66. The memory medium of claim 60, wherein, in said registering the IP telephone:
the IP telephone program instructions are executable to send a public IP address of the IP telephone; and the Media Gateway Controller program instructions are executable to receive and store the public IP address of the IP telephone.
- 67. The memory medium of claim 60, wherein, in said registering the IP telephone:
the IP telephone program instructions are further executable to send a private IP address of the IP telephone; and Media Gateway Controller program instructions are further executable to receive and store the private IP address of the IP telephone; wherein said public IP address and said port range are useable to determine said private IP address.
- 68. The memory medium of claim 60, wherein the range of port numbers comprises one or more port numbers which are not reserved for use by other IP protocols.
- 69. The memory medium of claim 60, wherein, in said performing IP communications using the IP telephone, the Service Gateway program instructions are executable to perform:
receiving a data packet from the IP telephone, wherein the data packet comprises a private source IP address, a source port number, and destination information associated with an IP device, and wherein said source port number is in the assigned range of port numbers; performing a network address persistent port translation (NAPPT) on the data packet; and sending the data packet to the IP device.
- 70. The memory medium of claim 69, wherein said performing a network address persistent port translation (NAPPT) on the data packet comprises changing the private source IP address to a public source IP address while leaving the source port number unchanged, and wherein the public source IP address and the source port number may be used to uniquely identify the IP telephone.
- 71. The memory medium of claim 69, wherein said Service Gateway program instructions are further executable to perform the following steps prior to said receiving said packet:
receiving the identifier from the IP telephone; determining if the identifier is valid; and if the identifier is valid, assigning the range of port numbers to the IP telephone based on the identifier, wherein the IP telephone is operable to use at least a subset of the range of port numbers to send or receive IP communications.
- 72. The memory medium of claim 71, wherein the identifier comprises a vendor class identifier.
- 73. The memory medium of claim 71, wherein said determining comprises:
determining if a MAC ID for the IP telephone is valid; and if the MAC ID is determined to be valid, then determining if the identifier is valid.
- 74. The memory medium of claim 60, wherein, in said performing IP communications using the IP telephone, the Service Gateway program instructions are further executable to perform:
receiving a data packet from the IP device, wherein the data packet comprises a public destination IP address, a destination port number, and source information, wherein said destination port number is in the assigned range of port numbers and wherein the public destination IP address and the destination port number may be used to uniquely identify the IP telephone; performing a network address persistent port translation (NAPPT) on the data packet; and sending the data packet to the IP telephone.
- 75. The memory medium of claim 74, wherein said performing a network address persistent port translation (NAPPT) on the data packet received from the destination comprises using the public destination IP address and the destination port number to uniquely identify the IP telephone, and changing the public destination IP address to a private source IP address of the IP telephone while leaving the destination port number unchanged.
PRIORITY CLAIM
[0001] This application claims benefit of priority of U.S. provisional application Serial No. 60/281,908 titled “SYSTEM AND METHOD FOR IP TELEPHONY” filed Apr. 3, 2001, whose inventors were Richard E. Fangman and Jason D. Preston.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60281908 |
Apr 2001 |
US |