WO2014101974A1 - Ip address based udp relay - Google Patents

Ip address based udp relay Download PDF

Info

Publication number
WO2014101974A1
WO2014101974A1 PCT/EP2013/003280 EP2013003280W WO2014101974A1 WO 2014101974 A1 WO2014101974 A1 WO 2014101974A1 EP 2013003280 W EP2013003280 W EP 2013003280W WO 2014101974 A1 WO2014101974 A1 WO 2014101974A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
address
udp
relay
destination
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2013/003280
Other languages
English (en)
French (fr)
Inventor
Sanjeeva Reddy YERRAPUREDDY
Srivatsa KEDILAYA
Lathakannan ARUMUGAM
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Original Assignee
Alcatel Lucent SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel Lucent SAS filed Critical Alcatel Lucent SAS
Priority to JP2015550001A priority Critical patent/JP6053233B2/ja
Priority to US14/651,179 priority patent/US20150334014A1/en
Priority to CN201380068737.0A priority patent/CN104885428B/zh
Priority to EP13795157.0A priority patent/EP2939385A1/en
Publication of WO2014101974A1 publication Critical patent/WO2014101974A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00—Routing or path finding of packets in data switching networks
    • H04L45/74—Address processing for routing
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164—Adaptation or special uses of UDP protocol
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00—Network arrangements, protocols or services for addressing or naming
    • H04L61/09—Mapping addresses
    • H04L61/10—Mapping addresses of different types
    • H04L61/106—Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00—Network arrangements, protocols or services for addressing or naming
    • H04L61/50—Address allocation
    • H04L61/5007—Internet protocol [IP] addresses
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00—Indexing scheme associated with group H04L61/00
    • H04L2101/60—Types of network addresses
    • H04L2101/618—Details of network addresses
    • H04L2101/663—Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00—Network arrangements, protocols or services for addressing or naming
    • H04L61/09—Mapping addresses
    • H04L61/10—Mapping addresses of different types
    • H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Definitions

  • the present subject matter relates to communication systems and, particularly but not exclusively, to communication systems utilizing IP address based UDP relay.
  • UDP User Datagram Protocol
  • a communication device say a transmitting device, intends to transmit some data to a server in the same network, say a virtual local area connection (VLAN), or a different network.
  • the transmitting device is not aware of the IP address of the server, the transmitting device broadcasts the data, as a message, into the same network.
  • the message thus broadcasted is received by all the communication devices in the same network as the transmitting device and retained by a communication device that is acting as the server for the same network and discarded by other communication devices.
  • the server may subsequently send a response message to the transmitting device to initiate a communication path.
  • a UDP relay connected to the same network may broadcast the message to another network or another UDP relay that may in turn broadcast the message to other networks until the message is broadcasted in a network to which the server is connected.
  • the UDP relay mechanism of broadcasting the messages usually results in flooding and cluttering of the messages in intermediate network segments in the path to the server, thus congesting the network. Further, employing multiple UDP relays for broadcasting the message may result in increase in cost.
  • a method for UDP relay in communication networks comprises, identifying a UDP port number included in a header of a message. Further, the IP address is ascertained based on a mapping table, wherein the mapping table includes a list of plurality of UDP port numbers mapping to the IP addresses of corresponding destination servers. Further, the message is modified to obtain a modified message based at least on the IP address. Subsequently, the modified message is unicasted to the destination IP address.
  • a UDP relay for IP address based UDP relay in communication networks.
  • the UDP relay includes a processor and an interaction module coupled to the processor.
  • the interaction module is configured to receive a message from a communication device.
  • the UDP relay includes a processing module coupled to the processor, where the processing module is configured to identify a UDP port number included in a header of the message.
  • the processing module ascertains the IP address based on a mapping table, wherein the mapping table includes a list of plurality of UDP port numbers mapping to the IP addresses of corresponding destination servers, and modifies the message to obtain a modified message based at least on the destination IP address.
  • the UDP relay also includes a network module coupled to the processor. The network module is configured to unicast the modified message to the destination server.
  • a computer-readable medium having embodied thereon, a computer program for executing a method for UDP relay in communication networks comprises identifying a UDP port number included in a header of a message.
  • the UDP port number is mapped to the IP address of a destination server or an agent in another network in this method.
  • the method includes ascertaining the IP address based on a mapping table, wherein the table includes a list of plurality of UDP ports and corresponding IP addresses.
  • the message is modified to obtain a modified message based at least on the destination IP address. Subsequently, the modified message is unicasted to the destination IP address.
  • Figure 1 illustrates an exemplary network environment implementation for IP address based UDP relay in communication networks, according to an embodiment of the present subject matter
  • Figure 2 illustrates a method for IP address based UDP relay in communication networks, in accordance with an embodiment of the present subject matter
  • the systems and the methods can be implemented in a variety of computing devices communicating through various networks.
  • the communication devices that can implement the described method(s) and systems include, but are not limited to, computing devices, such as a laptop, a desktop computer, a notebook, a mobile phone, a personal digital assistant, cellular phones, smart phones, a workstation, a mainframe computer, a set top box, a media player, central directory servers, database server, file server, print server, web server, application server, and the like.
  • the communication networks in which the described method(s) can be implemented include, but are not limited to, any network using Internet Protocol (IP), Multi Protocol Label Switching (MPLS) networks, Asynchronous Transfer Mode (ATM) networks, Code Division Multiple Access (CDMA) implementing Evolution-Data Optimized or Evolution-Data Only (EVDO), Global System for Mobile Communication (GSM), Universal Mobile Telecommunications System (UMTS), Wideband Code Division Multiple Access (W-CDMA) backhaul networks, and the like.
  • IP Internet Protocol
  • MPLS Multi Protocol Label Switching
  • ATM Asynchronous Transfer Mode
  • CDMA Code Division Multiple Access
  • EVDO Evolution-Data Optimized or Evolution-Data Only
  • GSM Global System for Mobile Communication
  • UMTS Universal Mobile Telecommunications System
  • W-CDMA Wideband Code Division Multiple Access
  • UDP unicast, multicast or broadcast messages
  • a communication device i.e., a transmitting device
  • intending to communicate with an intended receiver initially broadcasts a discovery message in the communication network to identify the intended receiver.
  • the intended receiver may be a server for a particular UDP service, identified by a UDP port.
  • the discovery message is subsequently received and processed by all the communication devices connected to the communication network and discarded by the communication devices that are not the intended receiver. While the intended receiver, say a UDP server sends a response message to the transmitting device thus initiating communication with the transmitting device.
  • broadcasting the discovery message for initiating the communication helps in cases where the transmitting device is not aware of the IP address of the intended receiver.
  • broadcasting the discovery messages usually results in flooding and cluttering of the discovery messages in the networks to which the transmitting device and the intended receiver are connected, thus congesting the network.
  • VLANs are typically set up for each floor or building.
  • data packets broadcasted by a communication device on a floor say a first floor
  • servers for each of the networks are typically set up on a common floor having a server room, say a tenth floor. Subsequently, the data packets have to be broadcasted from one floor to another floor to reach a server corresponding to the floor of the communication device through one or more UDP relays.
  • data packets from a first floor that need to be sent to the tenth floor are initially broadcasted in the first floor and from there are broadcasted by the UDP relay in each floor, till they reach the UDP relay on the tenth floor, which is in the same network as the intended server.
  • Such a conventional technique usually results in congestion of all the intermediate networks corresponding to each of the floors.
  • individual servers may be set up on each floor to avoid congestion of the network on at least one floor.
  • setting up separate servers or UDP relays may lead to increase in cost of setting up the communication networks.
  • systems and methods for communication networks utilizing IP address based UDP relay are described.
  • the systems and the methods can be implemented in a variety of processing and communicating devices capable of communicating with a network according to various different standards defined for the communication. Further, the systems and the methods described herein may be connected through either wired networks or wireless networks provided via different means.
  • all networks say, VLANs present in a communication environment are provided with a UDP relay configured to relay data packets originating in a home network, i.e., a network to which the UDP relay is connected, to a destination server, such as a UDP server, belonging to a destination network, i.e., a network to which the data packets needs to be relayed to.
  • the UDP relay is configured to process the data packets to be broadcasted, hereinafter referred to as the message, to identify the destination server and obtain a modified message. Subsequently, the UDP relay unicasts the modified message to the destination server.
  • the destination server is assigned an IP address.
  • the UDP relay identifies the IP address of the destination server and unicasts the modified message with the IP address as header. Unicast transmission of the modified message based on the IP address of the destination server thus prevents flooding of the message in intermediate networks and destination networks, thus reducing network congestion and costs.
  • a communication device i.e., a transmitting device, intending to send the message to the destination server, initially broadcasts the message in the associated home network.
  • the message is thus received and processed by all communication devices connected to the home network and discarded by the communication devices that are not intended receiver of the message.
  • the destination server responds to the broadcast message, otherwise, the UDP relay connected to the home network processes the broadcast message for transmitting it further.
  • the UDP relay initially identifies the IP address of the destination server of the destination network, for example, based on a UDP port number provided in the message.
  • a user for example, a network administrator configures the IP address of the destination server and maps the IP address to the respective UDP port number, such that the IP address associated with the destination server may be identified based on the UDP port number.
  • the transmitting device while broadcasting the message may provide the UDP port number in the message that may be ascertained by the UDP relay upon processing of the message.
  • the UDP relay may identify the IP address of the destination server, for example, by using a mapping table listing the UDP port number mapped to the IP address of the destination server.
  • the communication device intending to transmit a message to a destination server of a destination network having an IP address 192.168.58.21 and UDP port number as 5001 may add the UDP port number in the message and broadcast the message in the home network.
  • the UDP relay on receiving the message may process the same and ascertain the UDP port number as 5001. Based on the UDP port number mapped to the IP address of the destination server in the mapping table, the UDP relay may subsequently identify the IP address of the destination server as 192.168.58.21.
  • the UDP relay may subsequently convert the message to a modified message and replace a destination IP address in the header of the message with the IP address of the destination server. Further, the UDP relay modifies destination and source Media Access Control (MAC) address of the message. In one implementation, the UDP relay is configured to change the destination MAC address to a MAC address of a next hop router. The UDP relay, in one implementation, may ascertain the MAC address of the next hop router based on a table corresponding to an address resolution protocol (ARP). Further, the UDP relay changes the source MAC address to a router MAC address of the UDP relay.
  • ARP address resolution protocol
  • the UDP relay subsequently determines a time to live (TTL) value of the message and decrements the value by one in case the TTL value of the message is greater than one. In case, the TTL value of the message is less than one, the UDP relay discards the message.
  • the modified message thus obtained is transferred to the next hop router that further forwards the modified message to the destination server based on the IP address provided in the modified message.
  • the destination server on receiving the modified message, processes the same and responds to the communication device to initiate the communication based on a source IP address included in the modified message.
  • the present subject matter thus describes methods and systems for relaying message based on IP address, thereby reducing the number of messages in the communication network. As a result, congestion in intermediate networks and the destination network is averted. Subsequently, the operation cost is also reduced as multiple UDP relays are not utilized and less number of network resources are used for relaying messages in the communication network.
  • the described methodologies can be implemented in hardware, firmware, software, or a combination thereof.
  • the processing units can be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • processors controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
  • system encompasses logic implemented by software, hardware, firmware, or a combination thereof.
  • the methodologies can be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein.
  • Any machine readable medium tangibly embodying instructions can be used in implementing the methodologies described herein.
  • software codes and programs can be stored in a memory and executed by a processing unit.
  • Memory can be implemented within the processing unit or may be external to the processing unit.
  • memory refers to any type of long term, short term, volatile, nonvolatile, or other storage devices and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
  • the functions may be stored as one or more instructions or code on a computer-readable medium.
  • Examples include computer-readable media encoded with a data structure, and the computer-readable media encoded with a computer program.
  • the computer-readable media may take the form of an article of manufacturer.
  • the computer-readable media includes physical computer storage media.
  • a storage medium may be any available medium that can be accessed by a computer.
  • such a computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of the computer-readable media.
  • Figure 1 illustrates a network environment 100 for IP addressed based UDP relay.
  • the network environment 100 includes one or more networks 102-1 , 102-2, and 102-N, hereinafter collectively referred to as networks 102 and individually referred to as the network 102, connected to a communication network 104, according to an embodiment of the present subject matter.
  • the networks 102 and the communication network 104 can be implemented as one of the different types of networks, such as intranet, local area network (LAN), virtual LAN (VLAN), wide area network (WAN), and the internet.
  • the network 102 may be IP based.
  • the network 102 may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), User Datagram Protocol (UDP), and Wireless Application Protocol (WAP) to communicate with each other. Further, the network 102 may include a variety of network devices, including routers, bridges, servers, computing devices, and storage devices.
  • HTTP Hypertext Transfer Protocol
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • UDP User Datagram Protocol
  • WAP Wireless Application Protocol
  • the network 102 may include a variety of network devices, including routers, bridges, servers, computing devices, and storage devices.
  • the communication network 104 may be a wireless network, or a combination of wired and wireless network.
  • the communication network 104 can be a collection of individual networks, interconnected with each other and functioning as a single large network (e.g., the internet or an intranet). Examples of such individual networks include, but are not limited to, 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), and the like. Further, depending on the technology, the communication network 104 includes various network entities, such as gateways, routers; however, such details have been omitted for ease of understanding.
  • the networks 102 include one or more communication devices 106-1,
  • communication devices 106 106-2, 106-3, and 106-N, hereinafter collectively referred to as communication devices 106 and individually referred to as the communication device 106, connected to one or more networks 102, according to an embodiment of the present subject matter.
  • the communication devices 106 may be defined as User Equipments (UEs) used by users to communicate with each other.
  • UEs User Equipments
  • Examples of the communication devices 106 may include, without limitation, mobile phones, landline phones, desktop computers, hand-held devices, laptops or other portable computers, network computers, and the like.
  • Each of the communication devices 106 work on a communication protocol as defined by the network to which the communication device 106 is coupled.
  • the network 102 includes a UDP relay 108 configured to handle broadcast data packets transmitted to any of the communication devices 106, servers, ports, and the like, in any of the networks 102.
  • the UDP relay 108 is configured to relay data packets, hereinafter referred to as message, originating in a home network, say a network 102-1 to which the UDP relay 108 is connected, to a destination server of a destination network, say a network 102-2, in which the message is to be transmitted.
  • the UDP relay 108 includes one or more processor(s) 1 10, I/O interface(s) 1 12, and a memory 1 14 coupled to the processor 110.
  • the processor(s) 1 10 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
  • the processor(s) 110 are configured to fetch and execute computer-readable instructions stored in the memory 114.
  • processors may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software.
  • the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
  • explicit use of the term "processor” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non volatile storage.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • ROM read only memory
  • RAM random access memory
  • non volatile storage Other hardware, conventional and/or custom, may also be included.
  • the I/O interface(s) 1 12 may include a variety of software and hardware interfaces, for example, interfaces for peripheral device(s), such as data input output devices, referred to as I/O devices, storage devices, network devices, etc.
  • peripheral device(s) such as data input output devices, referred to as I/O devices, storage devices, network devices, etc.
  • the I/O device(s) may include Universal Serial Bus (USB) ports, Ethernet ports, host bus adaptors, etc., and their corresponding device drivers.
  • USB Universal Serial Bus
  • the I/O interface(s) 1 12 facilitate the communication of the UDP relay 108 with various networks, such as the communication network 104, the networks 102 and various communication and computing devices, such as the communication devices 106.
  • the memory 1 14 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
  • volatile memory such as static random access memory (SRAM) and dynamic random access memory (DRAM)
  • DRAM dynamic random access memory
  • non-volatile memory such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
  • the UDP relay 108 may also include various modules 1 16.
  • the modules 1 16 include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types.
  • the modules 1 16 may also be implemented as, signal processor(s), state machine(s), logic circuitries, and/or any other device or component that manipulate signals based on operational instructions.
  • the modules 1 16 can be implemented in hardware, instructions executed by a processing unit, or by a combination thereof.
  • the processing unit can comprise a computer, a processor, such as the processor 1 10, a state machine, a logic array or any other suitable devices capable of processing instructions.
  • the processing unit can be a general-purpose processor which executes instructions to cause the general-purpose processor to perform the required tasks or, the processing unit can be dedicated to perform the required functions.
  • the modules 1 16 may be machine- readable instructions (software) which, when executed by a processor/processing unit, perform any of the described functionalities.
  • the machine-readable instructions may be stored on an electronic memory device, hard disk, optical disk or other machine-readable storage medium or non-transitory medium.
  • the machine-readable instructions can be also be downloaded to the storage medium via a network connection.
  • the UDP relay 108 may further include data 1 18, which amongst other things, serves as a repository for storing data processed, received, associated, and generated by one or more of the module(s) 1 16.
  • the module(s) 1 16 further include an interaction module 120, a processing module 122, a network module 124, and other module(s) 126.
  • the other module(s) 126 may include programs or coded instructions that supplement applications and functions of the UDP relay 108.
  • the data 1 18 includes, for example, interaction data 128, processing data 130, network data 132, and other data 134.
  • the other data 134 includes data generated as a result of the execution of one or more modules in the other module(s) 126.
  • the network 102-1 is hereinafter referred to as VLAN1 and a destination network, say the network 102-2 is hereinafter referred to as VLAN2.
  • VLAN1 a destination network
  • VLAN2 a destination network
  • the description herein is with reference to a VLAN, however, the present subject matter may be applicable in all communication networks supporting UDP protocol, albeit with a few modifications, as would be understood by a person skilled in the art.
  • IP internet protocol
  • UDP user datagram protocol
  • a UDP relay such as the UDP relay 108 is present in each of the individual networks for handling data communication between the networks.
  • the UDP relay 108 is configured to process a message, transmitted to a destination server, such as the UDP server 136, of a destination network, such as the VLAN2, broadcasted by the communication device 106-1.
  • the interaction module 120 is configured to receive the message broadcasted by the communication device 106-1.
  • the message includes a UDP port number in a header of the message.
  • the UDP port number is mapped to an IP address of a destination server in a mapping table.
  • a network administrator may configure the IP address of the destination server and map it to the UDP port number in the mapping table.
  • the mapping table includes a list of UDP ports mapping to the IP addresses of the corresponding servers.
  • the communication device 106-1 intending to transmit a message to a destination server with IP address 192.168.58.21 and UDP port number as 5001 may add the UDP port number, i.e., 5001 in a header of the message and broadcast the message in its home network.
  • the processing module 122 is configured to process the message and ascertain the IP address mapped to the UDP port number included in the header of the message.
  • the processing module 122 includes a mapping table comprising UDP port numbers mapped to the IP addresses of the destination servers. Based on the mapping table, the processing module 122 ascertains the IP address mapped to the UDP port number specified in the header of the message.
  • the processing module 122 includes the IP address of the destination server in a destination IP address field in the header of the message. For instance, as described in the previous example, the processing module 122 processes the message and ascertains the UDP port number as 5001. Based on the UDP port number, the processing module 122 may subsequently identify the IP address of the destination server as 192.168.58.21 based on a mapping table.
  • the processing module 122 is configured to modify a destination media access control (MAC) address and a source MAC address of the message.
  • the processing module 122 changes the destination MAC address of the message to a MAC address of a next hop router.
  • the processing module 122 may ascertain the MAC address of the next hop router according to an address resolution protocol (ARP) table based on the ARP, as would be understood by a person skilled in the art.
  • ARP address resolution protocol
  • the processing module 122 may obtain the mapping table and the ARP table from the processing data 130. Subsequently, the processing module 122 changes the source MAC address of the message to a router MAC address of the UDP relay 108.
  • the processing module 122 may not modify a source IP address corresponding to the communication device 106-1 included in the message.
  • the destination server can directly communicate with the communication device 106-1 as the source IP address of the message is not modified.
  • the processing module 122 determines a time to live (TTL) value included in the message. In one implementation, if the TTL value of the message is determined as greater than one, the processing module 122 is configured to decrement the TTL value of the message by one and obtain a modified message. In another implementation, if the TTL value of the message is determined less than one, the processing module 122 is configured to discard the message. [0049] In one implementation, the network module 124 is configured to relay the modified broadcast message as unicast message to the UDP server 136, based on IP address. In one implementation, if the destination server is unknown, the network module 124 is configured to interact with the next hop router. Subsequently, the next hop router, then, unicasts the modified message to the destination server based on the IP address, corresponding to the UDP port, specified in the mapping table.
  • TTL time to live
  • UDP relay of messages based on IP address in communication networks help in reducing the number of messages in the communication network thereby avoiding clustering of messages and reducing occurrences of congestion in the communication network. Further, the operations cost is reduced as less number of UDP relays are deployed for relaying messages in the communication network.
  • Figure 2 illustrates a method 200 for IP addressed based UDP relay in a communication network, according to an embodiment of the present subject matter.
  • the order in which the method 200 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 200, or any alternative methods. Additionally, individual blocks may be deleted from the method without departing from the spirit and scope of the subject matter described herein.
  • the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
  • the method may be described in the general context of computer executable instructions.
  • computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, functions, etc., that perform particular functions or implement particular abstract data types.
  • the method may also be practiced in a distributed computing environment where functions are performed by remote processing devices that are linked through a communications network.
  • computer executable instructions may be located in both local and remote computer storage media, including memory storage devices.
  • steps of the method can be performed by programmed computers.
  • program storage devices for example, digital data storage media, which are machine or computer readable and encode machine-executable or computer-executable programs of instructions, where said instructions perform some or all of the steps of the described method.
  • the program storage devices may be, for example, digital memories, magnetic storage media, such as a magnetic disks and magnetic tapes, hard drives, or optically readable digital data storage media.
  • the embodiments are also intended to cover both communication network and communication devices configured to perform said steps of the exemplary methods.
  • a UDP port number included in a header of a message is identified.
  • a processing module of a UDP relay such as the processing module 122, is configured to identify the UDP port number included in the header of the message.
  • an IP address of a destination server is ascertained based on a mapping table.
  • the processing module 122 ascertains the IP address based on a mapping table.
  • the mapping table includes a plurality of UDP port numbers mapped to the IP addresses of the corresponding destination servers.
  • a user for example, a network administrator may configure the UDP port numbers and map them to the IP addresses of the corresponding destination server in the UDP relay.
  • the UDP port number is mapped to an IP address of a destination server.
  • the header of the message may include a UDP port number 5001 which is mapped to an IP address 192.168.1 1.21 of the destination sever.
  • the processing module is configured to process the header of the message.
  • the processing module 122 upon ascertaining the IP address of the destination server, includes the IP address in a destination IP address field of the header of the message.
  • the processing module is configured to modify the destination MAC address and a source MAC address of the message.
  • the processing module changes the destination MAC address of the message to a MAC address of a next hop router.
  • the processing module may ascertain the MAC address of the next hop router based on an address resolution protocol (ARP) table based on ARP, as would be understood by a person skilled in the art.
  • ARP address resolution protocol
  • the processing module changes the source MAC address of the message to a router MAC address of the UDP relay.
  • a time to live (TTL) value of the message is determined.
  • the processing module 122 is configured to determine the TTL value of the message using conventional methods, as will be understood by a person skilled in the art.
  • a comparison is made between the TTL value of the message and a default value. In one implementation, the comparison of the TTL value of the message is made with one. If it is determined that the TTL value of the message is less than one, which is the "NO' path, the method proceeds towards block 212. At block 212, the processing module 122 is configured to discard the message.
  • the method proceeds towards block 214.
  • the processing module 122 is configured to decrement the TTL value of the message by one and obtain a modified message.
  • the modified message is unicasted.
  • a network module such as the network module 124, is configured to unicast the modified message to the IP address included in the destination IP address of the modified message.
  • the IP address corresponds to the destination server of a destination network of a UDP port.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
PCT/EP2013/003280 2012-12-31 2013-10-31 Ip address based udp relay Ceased WO2014101974A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015550001A JP6053233B2 (ja) 2012-12-31 2013-10-31 Ipアドレスに基づくudp中継
US14/651,179 US20150334014A1 (en) 2012-12-31 2013-10-31 Ip address based udp relay
CN201380068737.0A CN104885428B (zh) 2012-12-31 2013-10-31 基于ip地址的udp中继的方法、中继器和计算机可读介质
EP13795157.0A EP2939385A1 (en) 2012-12-31 2013-10-31 Ip address based udp relay

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN4075/DEL/2012 2012-12-31
IN4075DE2012 IN2012DE04075A (enExample) 2012-12-31 2013-10-31

Publications (1)

Publication Number Publication Date
WO2014101974A1 true WO2014101974A1 (en) 2014-07-03

Family

ID=54198812

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2013/003280 Ceased WO2014101974A1 (en) 2012-12-31 2013-10-31 Ip address based udp relay

Country Status (6)

Country Link
US (1) US20150334014A1 (enExample)
EP (1) EP2939385A1 (enExample)
JP (1) JP6053233B2 (enExample)
CN (1) CN104885428B (enExample)
IN (1) IN2012DE04075A (enExample)
WO (1) WO2014101974A1 (enExample)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10021589B2 (en) 2016-01-26 2018-07-10 Sprint Communications Company L.P. Wireless data system that associates internet protocol ports with quality-of-service for user applications
US10454765B2 (en) * 2016-07-15 2019-10-22 Mastercard International Incorporated Method and system for node discovery and self-healing of blockchain networks
JP7157242B2 (ja) 2018-09-13 2022-10-19 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 通信可能に結合される通信デバイスのネットワークでのメッセージの選択的転送をサポートする方法およびデバイス
CN111385372B (zh) * 2019-04-03 2023-04-07 鸿合科技股份有限公司 一种网络服务发现方法、客户端及服务器、电子设备
CN112311894B (zh) * 2020-11-12 2024-07-19 北京沃东天骏信息技术有限公司 用于生成信息的方法、装置、电子设备和计算机可读介质
CN117499307A (zh) * 2022-07-26 2024-02-02 迈普通信技术股份有限公司 报文转发方法、装置、fpga和语音通信设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005043848A1 (en) * 2003-11-03 2005-05-12 Immertec Co., Ltd. Udp packet communication method and system for private ip terminals
EP2262183A1 (en) * 2008-04-02 2010-12-15 Ntt Docomo, Inc. Data communication terminal, proxy device, data communication system, and data communication method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023563A (en) * 1996-08-20 2000-02-08 Shani; Ron Networking switch having the network presence of a bridge
CN1305276C (zh) * 2004-01-15 2007-03-14 中兴通讯股份有限公司 一种快速处理实时媒体流数据包的方法及其系统
JP4440056B2 (ja) * 2004-09-27 2010-03-24 パナソニック株式会社 情報処理装置、通信処理装置、情報処理システム、情報処理方法、及び通信処理方法
JP2007329791A (ja) * 2006-06-09 2007-12-20 Matsushita Electric Ind Co Ltd ゲートウェイ装置
JP2012249138A (ja) * 2011-05-30 2012-12-13 Sumitomo Electric Ind Ltd パケット捕捉装置及びコンピュータプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005043848A1 (en) * 2003-11-03 2005-05-12 Immertec Co., Ltd. Udp packet communication method and system for private ip terminals
EP2262183A1 (en) * 2008-04-02 2010-12-15 Ntt Docomo, Inc. Data communication terminal, proxy device, data communication system, and data communication method

Also Published As

Publication number Publication date
CN104885428A (zh) 2015-09-02
JP2016506174A (ja) 2016-02-25
EP2939385A1 (en) 2015-11-04
IN2012DE04075A (enExample) 2015-06-19
US20150334014A1 (en) 2015-11-19
JP6053233B2 (ja) 2016-12-27
CN104885428B (zh) 2018-04-20

Similar Documents

Publication Publication Date Title
US9774563B2 (en) Packet transmission method, apparatus, and system in multicast domain name system
US8982707B2 (en) Interoperability of data plane based overlays and control plane based overlays in a network environment
US9614759B2 (en) Systems and methods for providing anycast MAC addressing in an information handling system
CN103814554B (zh) 一种虚拟可扩展局域网的通信方法、装置和系统
US10693833B2 (en) Address resolution suppression in a logical network
JP6722816B2 (ja) パケット転送
CN105591916B (zh) 一种报文传输方法及装置
US20150326524A1 (en) Address resolution in software-defined networks
US12199855B2 (en) Multicast forwarding entry generation method and access gateway
US20150334014A1 (en) Ip address based udp relay
CN106330715A (zh) 报文处理方法及装置
WO2019080592A1 (zh) 一种发送报文的方法和设备
US20230111266A1 (en) Smart service discovery to interconnect clusters having overlapping ip address space
US20170332439A1 (en) Extending the range of mesh networks
US20180159758A1 (en) Virtual media access control addresses for hosts
US9781036B2 (en) Emulating end-host mode forwarding behavior
CN103036794A (zh) 一种报文的学习方法、装置和系统
US12021825B2 (en) Network address translation (NAT) devices configured to resolve NAT state synchronization issues
US12003417B2 (en) Communication method and apparatus
US9584426B2 (en) Congestion management in overlay networks
EP3694158B1 (en) Active-active access to transparent interconnection of lots of links (trill) edges
US9985926B2 (en) Address acquiring method and network virtualization edge device
WO2013116384A1 (en) Hierarchical network with active redundant links
US20170070473A1 (en) A switching fabric including a virtual switch
CN105827588A (zh) 一种基于网络驱动层的流媒体数据分发系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13795157

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013795157

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14651179

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2015550001

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE