KR20160063161A - Network system capable changing traffic path between heterogeneous networks - Google Patents
Network system capable changing traffic path between heterogeneous networks Download PDFInfo
- Publication number
- KR20160063161A KR20160063161A KR1020140166821A KR20140166821A KR20160063161A KR 20160063161 A KR20160063161 A KR 20160063161A KR 1020140166821 A KR1020140166821 A KR 1020140166821A KR 20140166821 A KR20140166821 A KR 20140166821A KR 20160063161 A KR20160063161 A KR 20160063161A
- Authority
- KR
- South Korea
- Prior art keywords
- network
- mobile terminal
- switch
- communication module
- sdn
- 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
Links
- 238000004891 communication Methods 0.000 claims description 81
- 230000008859 change Effects 0.000 claims description 67
- 238000000034 method Methods 0.000 claims description 31
- 238000010295 mobile communication Methods 0.000 claims description 6
- 238000000060 site-specific infrared dichroism spectroscopy Methods 0.000 claims description 5
- 230000009471 action Effects 0.000 description 21
- 238000007726 management method Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 8
- 238000003860 storage Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000005111 flow chemistry technique Methods 0.000 description 6
- 241000760358 Enodes Species 0.000 description 5
- 238000004590 computer program Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W36/00—Hand-off or reselection arrangements
- H04W36/34—Reselection control
- H04W36/38—Reselection control by fixed network equipment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
- H04W28/09—Management thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W36/00—Hand-off or reselection arrangements
- H04W36/14—Reselecting a network or an air interface
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W36/00—Hand-off or reselection arrangements
- H04W36/16—Performing reselection for specific purposes
- H04W36/165—Performing reselection for specific purposes for reducing network power consumption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/34—Modification of an existing route
- H04W40/36—Modification of an existing route due to handover
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 이종 인터페이스 네트워크가 혼재된 환경에서 SDN(Software Defined Network)을 활용하여 효율적이고 원할한 핸드오버 또는 로드 밸런싱이 가능한 네트워크에 관한 것으로, 이동 단말이 아닌 전체 네트워크 상태를 파악할 수 있는 중앙의 제어기에서 핸드오버를 관리하여, 효율적이고 원할한 핸드오버를 제공할 수 있다.The present invention relates to a network capable of efficient and proper handover or load balancing by utilizing a SDN (Software Defined Network) in an environment where heterogeneous interface networks are mixed, and a central controller It is possible to manage the handover in an efficient and satisfactory manner.
Description
본 발명은 이종 인터페이스 네트워크가 혼재된 환경에서 SDN(Software Defined Network)을 활용하여 효율적이고 원할한 핸드오버 또는 로드 밸런싱이 가능한 네트워크에 관한 것이다.BACKGROUND OF THE
이종의 무선 네트워크에서의 핸드오버는 실시간으로 잘 이루어지지 않으며, WiFi AP의 무선 신호가 약하거나 AP 사이의 간섭으로 실제 패킷 교환이 잘 이루어지지 않는 AP가 선택되는 경향이 있다.Handover in heterogeneous wireless networks is not performed in real time, and APs with weak radio signals of WiFi AP or interference between APs tend to be selected.
본 발명의 목적은 SDN을 활용하여 중앙 집중화딘 엑세스 네트워크 정보 등을 기초로 이동 단말에 핸드오버를 지시할 수 있는 SDN 기반의 제어기, 및/또는 스위치, 또는 이들을 포함하는 네트워크 시스템을 제공하는 데 있다.It is an object of the present invention to provide an SDN-based controller and / or a switch, or a network system including the same, capable of instructing a mobile terminal to perform handover based on centralized access network information or the like using an SDN .
본 발명의 일실시예에 따른 트래픽의 이종 망 경로 변경이 가능한 네트워크 시스템은 SDN(Software Defined Network) 에이전트(agent)를 탑재하고, 서로 다른 종류의 제1 및 제2 무선 네트워크 인터페이스의 제1 및 제2 통신 모듈을 구비하는 이동 단말; 상기 제1 및 제2 통신 모듈과 각각 무선 통신하는 SDN 기반의 제1 및 제2 무선 엑세스 장치; 상기 제1 및 제2 무선 엑세스 장치와 유선 또는 무선 통신하며, 상기 제1 및 제2 무선 엑세스 장치를 통해 상기 이동 단말과 외부 네트워크 사이의 트래픽을 스위칭하는 SDN 기반의 스위치; 및 상기 이동 단말과 상기 SDN 스위치의 통신을 중계하는 상기 제1 무선 엑세스 장치에서 상기 제2 무선 엑세스 장치로 변경되도록 하는 망 변경 메시지를 상기 SDN 스위치로 송신하는 SDN 기반의 제어기를 포함할 수 있다.A network system capable of changing the heterogeneous network path of traffic according to an embodiment of the present invention includes a SDN (Software Defined Network) agent, and a first and a second wireless network interface A mobile terminal having two communication modules; An SDN-based first and second wireless access devices that wirelessly communicate with the first and second communication modules, respectively; An SDN based switch for performing wired or wireless communication with the first and second wireless access devices and switching traffic between the mobile terminal and the external network through the first and second wireless access devices; And an SDN-based controller for transmitting a network change message for changing from the first wireless access device to the second wireless access device to relay the communication between the mobile terminal and the SDN switch to the SDN switch.
또한, 상기 SDN 제어기는 네트워크 상태, QoS 정책, 상기 이동 단말의 사용자에 의한 설정 요청, 및 상기 SDN 제어기 관리자에 의한 설정 지시 중 적어도 하나에 의해 망 변경 결정을 하는 경우, 상기 망 변경 메시지를 생성할 수 있다.In addition, when the SDN controller makes a network change decision by at least one of a network state, a QoS policy, a setting request by the user of the mobile terminal, and a setting instruction by the SDN controller administrator, the SDN controller generates the network change message .
또한, 상기 이동 단말은, 상기 제1 무선 엑세스 장치를 통해 상기 망 변경 메시지를 수신한 경우, 상기 제2 통신 모듈을 활성화하여 상기 제2 무선 엑세스 장치와 통신할 수 있다.In addition, when the mobile terminal receives the network change message through the first wireless access device, the mobile terminal can activate the second communication module and communicate with the second wireless access device.
또한, 상기 이동 단말은, 상기 제2 무선 엑세스 장치로 상기 제2 통신 모듈의 IP 주소 요청 메시지를 전송할 수 있다.Also, the mobile terminal may transmit the IP address request message of the second communication module to the second wireless access device.
또한, 상기 IP 주소 요청 메시지는 상기 제1 통신 모듈로 통신 중이었음을 알리는 망 변경 알림을 포함할 수 있다.The IP address request message may include a network change notification indicating that the first communication module is in communication.
또한, 상기 SDN 스위치는 상기 제2 무선 엑세스 장치를 통해 수신한 상기 이동 단말의 상기 IP 주소 요청 메시지에 망 변경 알림이 포함되어 있는 경우, 상기 IP 주소 요청 메시지를 상기 SDN 제어기로 전송하고, 상기 IP 주소 요청 메시지는 상기 제2 통신 모듈의 식별 정보를 포함할 수 있다.The SDN switch transmits the IP address request message to the SDN controller when the network change notification is included in the IP address request message of the mobile terminal received through the second radio access device, The address request message may include identification information of the second communication module.
또한, 상기 SDN 제어기는 상기 이동 단말의 상기 제2 통신 모듈의 식별 정보가 없는 경우, 상기 망 변경 메시지를 송신하기 전에 상기 SDN 스위치를 통해 상기 제1 통신 모듈의 IP 주소 및 상기 제2 통신 모듈의 식별 정보를 포함하는 이동 단말 네트워크 정보를 취득할 수 있다.If the SDN controller does not have the identification information of the second communication module of the mobile terminal, the SDN controller transmits the IP address of the first communication module and the IP address of the second communication module via the SDN switch before transmitting the network change message. The mobile terminal network information including the identification information can be acquired.
또한, 상기 SDN 제어기는 상기 망 변경 메시지를 송신한 후, 상기 이동 단말의 제2 통신 모듈의 식별 정보를 포함하는 상기 제2 통신 모듈에 대한 IP 주소 요청 메시지를 수신하면, 상기 이동 단말 네트워크 정보로부터 상기 제1 통신 모듈의 IP 주소와 동일한 IP 주소를 포함하는 제2 통신 모듈 네트워크 설정 정보를 생성할 수 있다.When the SDN controller receives the IP address request message for the second communication module including the identification information of the second communication module of the mobile terminal after transmitting the network change message, The second communication module network configuration information including the same IP address as the IP address of the first communication module can be generated.
또한, 상기 제2 통신 모듈 네트워크 설정 정보는 상기 제2 무선 엑세스 장치를 통해 상기 이동 단말의 제2 통신 모듈로 전송될 수 있다.The second communication module network configuration information may be transmitted to the second communication module of the mobile terminal through the second wireless access device.
또한, 상기 이동 단말 네트워크 정보 및 상기 제2 통신 모듈 네트워크 설정 정보는 각각 동일한 디폴트 게이트웨이 정보, 서브넷 마스크, DNS(Domain Name Server) 정보 중 적어도 하나를 포함할 수 있다.In addition, the mobile terminal network information and the second communication module network configuration information may include at least one of the same default gateway information, a subnet mask, and DNS (Domain Name Server) information.
또한, 상기 제1 및 제2 무선 네트워크 중 어느 하나는 이동 통신이고 나머지 하나는 WiFi 네트워크일 수 있다.In addition, one of the first and second wireless networks may be a mobile communication and the other may be a WiFi network.
또한, 상기 제2 무선 네트워크는 WiFi이고, 상기 망 변경 메시지는 상기 제2 무선 엑세스 장치 접속에 필요한 SSID 정보를 포함할 수 있다.Also, the second wireless network may be WiFi, and the network change message may include SSID information required for connection to the second wireless access device.
또한, 상기 망 변경 메시지는 상기 제2 무선 엑세스 장치와의 암호화된 통신에 필요한 무선 암호키를 더 포함할 수 있다.The network change message may further include a wireless encryption key required for encrypted communication with the second wireless access device.
또한, 상기 망 변경 메시지는 상기 제2 무선 엑세스 장치와 동일한 종류의 복수의 무선 엑세스 장치 중 상기 제어기에 의해 특정된 상기 제2 무선 엑세스 장치로 상기 이동 단말이 접속하도록 하는 명령을 포함할 수 있다.In addition, the network change message may include a command to allow the mobile terminal to access the second wireless access device specified by the controller among a plurality of wireless access devices of the same type as the second wireless access device.
본 발명의 다른 실시예에 따른 네트워크 인터페이스 변경 방법은, SDN(Software Defined Network) 기반의 제어기에 의해 제어되는 SDN 기반의 스위치와, 서로 다른 방식의 무선 네트워크 인터페이스를 가지는 제1 및 제2 무선 엑세스 장치를 통해, 통신하는 이종의 네트워크 인터페이스의 제1 및 제2 통신 모듈을 구비하는 SDN 기반의 이동 단말의 네트워크 인터페이스 변경 방법으로서, 상기 제1 통신 모듈을 통해 상기 제1 무선 엑세스 장치와 데이터를 주고 받는 단계; 상기 SDN 제어기로부터 망 변경 메시지를 수신하는 단계; 및 상기 망 변경 메시지에 대응하여 상기 제2 통신 모듈을 활성화하는 단계를 포함할 수 있다.A network interface changing method according to another embodiment of the present invention includes a SDN-based switch controlled by a SDN (Software Defined Network) -based controller, a first and second radio access devices A method of changing a network interface of an SDN-based mobile terminal having first and second communication modules of different kinds of network interfaces communicating with each other through a first communication module, step; Receiving a network change message from the SDN controller; And activating the second communication module in response to the network change message.
또한, 상기 망 변경 메시지를 수신하기 전에, 상기 이동 단말의 네트워크 정보를 요청하는 메시지를 수신하는 단계; 및 상기 제1 통신 모듈의 IP 주소 및 상기 제2 통신 모듈의 식별 정보를 포함하는 이동 단말 네트워크 정보를 생성하여 상기 제1 무선 엑세스 장치로 송신하는 단계를 더 포함할 수 있다.Receiving a message requesting network information of the mobile terminal before receiving the network change message; And generating the mobile terminal network information including the IP address of the first communication module and the identification information of the second communication module, and transmitting the generated mobile terminal network information to the first wireless access device.
또한, 상기 제2 통신 모듈이 활성화되면, 상기 제2 무선 엑세스 장치로 IP 주소 요청 메시지를 전송하는 단계; 및 상기 IP 주소 요청 메시지에 대응하여 상기 제1 통신 모듈의 IP 주소와 동일한 IP 주소를 포함하는 제2 통신 모듈 네트워크 설정 정보를 수신하는 단계를 더 포함할 수 있다.Transmitting an IP address request message to the second wireless access device when the second communication module is activated; And receiving the second communication module network configuration information including the same IP address as the IP address of the first communication module in response to the IP address request message.
또한, 상기 제2 통신 모듈 네트워크 설정 정보는 디폴트 게이트웨이 정보, 서브넷 마스크, DNS(Domain Name Server) 정보 중 적어도 하나를 포함하고, 상기 제2 통신 모듈 네트워크 설정 정보 중 적어도 하나는 이에 대응하는 상기 이동 단말 네트워크 정보의 적어도 하나와 동일할 수 있다.In addition, the second communication module network setting information may include at least one of default gateway information, a subnet mask, and DNS (Domain Name Server) information, and at least one of the second communication module network setting information may include at least one of May be the same as at least one of the network information.
또한, 상기 제2 무선 네트워크는 WiFi 네트워크이고, 상기 망 변경 메시지는 상기 제2 무선 엑세스 장치 접속에 필요한 SSID 정보 및 상기 제2 무선 엑세스 장치와의 암호화된 통신에 필요한 무선 암호키 중 적어도 SSID 정보를 포함할 수 있다.Also, the second wireless network is a WiFi network, and the network change message includes at least SSID information among SSID information necessary for connection to the second wireless access device and wireless encryption key required for encrypted communication with the second wireless access device .
본 발명의 다른 실시예에 따른 데이터 경로 방법은, 이종의 네트워크 인터페이스의 제1 및 제2 통신 모듈을 구비하는 SDN 기반의 이동 단말과, SDN(Software Defined Network) 기반의 제1 및 제2 무선 엑세스 장치를 통해, 통신하는 SDN 기반의 스위치를 제어하는 SDN 기반의 제어기의 데이터 경로 변경 방법으로서, 상기 제1 무선 엑세스 장치를 경유하는 상기 이동 단말과 상기 SDN 스위치 사이의 데이터 경로가 상기 제2 무선 엑세스 장치를 경유하도록 하는 망 변경을 결정하는 단계; 및 상기 망 변경에 대응하는 망 변경 메시지를 생성하는 단계를 포함할 수 있다.The data path method according to another exemplary embodiment of the present invention includes an SDN-based mobile terminal having first and second communication modules of different types of network interfaces, first and second wireless accesses based on SDN (Software Defined Network) A method for changing a data path of an SDN-based controller for controlling an SDN-based switch communicating via a first wireless access device, wherein a data path between the mobile terminal and the SDN switch via the first wireless access device, Determining a network change to cause the device to pass; And generating a network change message corresponding to the network change.
또한, 상기 망 변경 결정은 네트워크 상태, QoS 정책, 상기 이동 단말의 사용자에 의한 설정 요청, 및 상기 SDN 제어기 관리자에 의한 설정 지시 중 적어도 하나에 의해 결정될 수 있다.In addition, the network change determination may be determined by at least one of a network state, a QoS policy, a setup request by the user of the mobile terminal, and a setup instruction by the SDN controller administrator.
또한, 상기 제2 통신 모듈의 식별 정보가 없는 경우, 상기 망 변경 결정하기 전에 상기 제1 통신 모듈의 IP 주소 및 상기 제2 통신 모듈의 식별 정보를 포함하는 이동 단말 네트워크 정보를 상기 SDN 스위치를 통해 취득하는 단계를 더 포함할 수 있다.Also, if there is no identification information of the second communication module, before determining the network change, mobile terminal network information including the IP address of the first communication module and the identification information of the second communication module is transmitted through the SDN switch And a step of acquiring the image data.
또한, 상기 생성된 망 변경 메시지를 상기 SDN 스위치로 전송한 후, 상기 이동 단말의 상기 제2 통신 모듈에 대한 IP 주소 요청 메시지를 수신하는 단계; 및 상기 이동 단말 네트워크 정보로부터 상기 제1 통신 모듈의 IP 주소와 동일한 IP 주소를 포함하는 제2 통신 모듈 네트워크 설정 정보를 생성하는 단계를 더 포함할 수 있다.Transmitting the generated network change message to the SDN switch and receiving an IP address request message for the second communication module of the mobile terminal; And generating second communication module network configuration information including the same IP address as the IP address of the first communication module from the mobile terminal network information.
또한, 상기 이동 단말 네트워크 정보 및 상기 제2 통신 모듈 네트워크 설정 정보는 각각 동일한 디폴트 게이트웨이 정보, 서브넷 마스크, DNS(Domain Name Server) 정보 중 적어도 하나를 포함할 수 있다.In addition, the mobile terminal network information and the second communication module network configuration information may include at least one of the same default gateway information, a subnet mask, and DNS (Domain Name Server) information.
또한, 상기 제2 통신 모듈 네트워크 설정 정보는 상기 제2 무선 엑세스 장치를 통해 상기 이동 단말의 제2 통신 모듈로 전송될 수 있다.The second communication module network configuration information may be transmitted to the second communication module of the mobile terminal through the second wireless access device.
본 발명의 다른 실시예에 따른 컴퓨터 프로그램은 위에서 언급된 방법들을 수행하기 위한 컴퓨터 실행가능 명령들이 포함될 수 있다.A computer program according to another embodiment of the present invention may include computer executable instructions for performing the above-mentioned methods.
본 발명에 따르면, 이동 단말이 아닌 전체 네트워크 상태를 파악할 수 있는 중앙의 제어기에서 핸드오버를 관리하여, 효율적이고 원할한 핸드오버를 제공할 수 있다.According to the present invention, it is possible to manage the handover in a central controller capable of grasping the entire network state rather than the mobile terminal, thereby providing an efficient and satisfactory handover.
도 1은 본 발명의 일실시예에 따른 SDN 네트워크 시스템의 블록 구성도(block diagram),
도 2는 도 1의 네트워크 시스템의 제어기의 블록 구성도,
도 3은 도 1의 네트워크 시스템의 스위치의 블록 구성도,
도 4는 플로우 엔트리의 필드 테이블 및 플로우 엔트리에 따른 동작 종류를 나타내는 동작 테이블,
도 5는 그룹 및 미터 테이블의 필드 테이블,
도 6은 본 발명의 일 실시예에 따른 네트워크 시스템의 블록 구성도,
도 7은 본 발명의 다른 실시예에 따른 네트워크 시스템의 블록 구성도, 및
도 8은 본 발명의 도 7의 네트워크 시스템에서의 신호 흐름도이다. 1 is a block diagram of an SDN network system according to an embodiment of the present invention;
2 is a block diagram of a controller of the network system of FIG. 1;
FIG. 3 is a block diagram of a switch of the network system of FIG. 1,
Fig. 4 shows an operation table indicating the type of operation according to the field table and the flow entry of the flow entry,
5 shows the field table of the group and meter tables,
6 is a block diagram of a network system according to an embodiment of the present invention;
7 is a block diagram of a network system according to another embodiment of the present invention, and Fig.
8 is a signal flow diagram in the network system of Fig. 7 of the present invention.
이하, 도면을 참조하여 본 발명을 보다 상세하게 설명한다.Hereinafter, the present invention will be described in more detail with reference to the drawings.
제 1, 제 2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 또한 네트워크 상의 제1 구성요소와 제2 구성요소가 연결되어 있거나 접속되어 있다는 것은, 유선 또는 무선으로 제1 구성요소와 제2 구성요소 사이에 데이터를 주고 받을 수 있음을 의미한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Also, the fact that the first component and the second component on the network are connected or connected means that data can be exchanged between the first component and the second component by wire or wirelessly.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 단순히 본 명세서 작성의 용이함만이 고려되어 부여되는 것으로서, 그 자체로 특별히 중요한 의미 또는 역할을 부여하는 것은 아니다. 따라서, 상기 "모듈" 및 "부"는 서로 혼용되어 사용될 수도 있다.In addition, suffixes "module" and " part "for the components used in the following description are given merely for convenience of description, and do not give special significance or role in themselves. Accordingly, the terms "module" and "part" may be used interchangeably.
이와 같은 구성요소들은 실제 응용에서 구현될 때 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 도면 전체를 통하여 동일하거나 유사한 구성요소에 대해서는 동일한 부여하였고, 동일한 도면 부호를 가지는 구성요소에 대한 자세한 설명은 전술한 구성요소에 대한 설명으로 대체되어 생략될 수 있다.When such components are implemented in practical applications, two or more components may be combined into one component, or one component may be divided into two or more components as necessary. The same or similar elements are given the same throughout the drawings, and the detailed description of the elements having the same reference numerals can be omitted and replaced with the description of the above-described elements.
도 1은 본 발명의 일실시예에 따른 SDN 네트워크 시스템의 블록 구성도(block diagram), 도 2는 도 1의 네트워크 시스템의 제어기의 블록 구성도, 도 3은 도 1의 네트워크 시스템의 스위치의 블록 구성도, 도 4는 플로우 엔트리의 필드 테이블 및 플로우 엔트리에 따른 동작 종류를 나타내는 동작 테이블, 도 5는 그룹 및 미터 테이블의 필드 테이블이다.FIG. 1 is a block diagram of an SDN network system according to an embodiment of the present invention. FIG. 2 is a block diagram of a controller of the network system of FIG. 1. FIG. 3 is a block diagram of a switch of a network system of FIG. 4 is an operation table showing a field table of a flow entry and an operation type according to a flow entry, and Fig. 5 is a field table of a group and a meter table.
도 1을 참조하면, 본 발명에 일 실시예에 따른 SDN 네트워크 시스템은 제어기(contoller)(10), 복수의 스위치(20) 및 복수의 네트워크 디바이스(30)를 포함할 수 있다.Referring to FIG. 1, an SDN network system according to an embodiment of the present invention may include a
네트워크 디바이스(30)는 데이터나 정보를 주고 받고자 하는 사용자 단말 장치, 또는 특정 기능을 수행하는 물리 장치 또는 가상 장치를 포함할 수 있다. 하드웨어 관점에서, 네트워크 디바이스(30)는 PC, 클라이언트 단말기, 서버, 워크스테이션, 수퍼컴퓨터, 이동통신 단말기, 스마트폰, 스마트패드 등이 있을 수 있다. 또한 네트워크 디바이스(30)는 물리 장치 상에 생성된 가상 머신(VM)일 수 있다. The
네트워크 디바이스(30)는 여러가지 네트워크 상의 기능을 수행하는 네트워크 기능(network function)으로 지칭될 수 있다. 네트워크 기능은 안티(anti) DDoS, 침입 감지/차단 (IDS/IPS), 통합 보안 서비스, 가상 사설망 서비스, 안티 바이러스, 안티 스팸, 보안 서비스, 접근관리 서비스, 방화벽, 로드 밸런싱, QoS, 비디오 최적화 등을 포함할 수 있다. 이러한 네트워크 기능은 가상화될 수 있다.The
가상화된 네트워크 기능으로 ETSI(유럽전기통신표준협회)에서 발행한 NFV 관련 백서(비특허문헌 3 참조)에서 정의된 네트워크 기능 가상화(Network Function Virtualiztion; NFV)가 있다. 본 명세서에서 네트워크 기능(NF)은 네트워크 기능 가상화(NFV)와 혼용하여 사용될 수 있다. NFV는 테넌트(tenant)별 필요한 L4-7 서비스 연결을 동적으로 생성하여 필요한 네트워크 기능을 제공하거나, DDoS 공격의 경우 정책 기반으로 필요한 방화벽, IPS 및 DPI 기능 등을 일련의 서비스 체이닝으로 빠르게 제공되는데 이용될 수 있다. 또한 NFV는 방화벽이나 IDS/IPS를 쉽게 온오프 할 수 있으며, 자동으로 프로비저닝(provisioning)할 수 있다. NFV는 오버 프로비저닝의 필요성도 줄일 수 있다.A virtualized network function, published by the European Telecommunications Standards Institute (ETSI) There is a Network Function Virtualization (NFV) defined in the NFV related white paper (see Non-Patent Document 3). The network function (NF) may be used herein in combination with network function virtualization (NFV). NFV provides necessary network functions by dynamically generating necessary L4-7 service connection for each tenant, and provides firewall, IPS and DPI functions necessary for policy-based DDoS attacks quickly through a series of service chaining . NFVs can also easily turn on and off firewalls or IDS / IPS and provision them automatically. NFV can also reduce the need for overprovisioning.
제어기(controller)(10)는 SDN 시스템을 제어하는 일종의 지휘 컴퓨터로서, 다양하고 복잡한 기능들, 예를 들어, 라우팅, 정책 선언, 및 보안 체크 등을 할 수 있다. 제어기(10)는 하위 계층의 복수의 스위치(20)에서 발생하는 패킷의 플로우를 정의할 수 있다. 제어기(10)는 네트워크 정책 상 허용되는 플로우에 대해 네트워크 토폴로지 등을 참조하여 플로우가 경유할 경로(데이터 경로)를 계산한 후, 경로 상의 스위치에 상기 플로우의 엔트리가 설정되도록 할 수 있다. 제어기(10)는 특정 프로토콜, 예를 들어, 오픈플로우 프로토콜을 이용하여 스위치(20)와 통신할 수 있다. 제어기(10)와 스위치(20)의 통신 채널은 SSL에 의해 암호화 될 수 있다.A
도 2를 참조하면, 제어기(10)는 스위치(20)와 통신하는 스위치 통신부(110), 제어부(100), 및 저장부(190)를 포함할 수 있다.2, the
저장부(190)는 제어부(100)의 처리 및 제어를 위한 프로그램을 저장할 수 있다. 저장부(190)는 입력되거나 출력되는 데이터들(패킷, 메시지 등)을 임시 저장을 위한 기능을 수행할 수 있다. 저장부(190)는 플로우 엔트리를 저장하는 엔트리 데이터베이스(DB)(191)를 포함할 수 있다.The storage unit 190 may store a program for processing and controlling the control unit 100. [ The storage unit 190 may perform a function for temporarily storing input or output data (packet, message, etc.). The storage unit 190 may include an entry database (DB) 191 for storing flow entries.
제어부(100)는 통상적으로 상기 각 부의 동작을 제어하여 제어기(10)의 전반적인 동작을 제어할 수 있다. 제어부(100)는 토폴로지 관리 모듈(120), 경로 계산 모듈(125), 엔트리 관리 모듈(135) 및 메시지 관리 모듈(130)을 포함할 수 있다. 각 모듈은 제어부(100) 내에 하드웨어로 구성될 수 있고, 제어부(100)와 별개의 소프트웨어로 구성될 수도 있다.The controller 100 may control the overall operation of the
토폴로지 관리 모듈(120)은 스위치 통신부(110)를 통하여 수집된 스위치(20)의 접속 관계를 기초로 네트워크 토폴로지 정보를 구축 및 관리 할 수 있다. 네트워크 토폴로지 정보는 스위치들 사이의 토폴로지 및 각 스위치에 연결되어 있는 네트워크 디바이스 토폴로지를 포함할 수 있다.The topology management module 120 can construct and manage network topology information based on the connection relationship of the
경로 계산 모듈(125)은 토폴로지 관리 모듈(120)에서 구축된 네트워크 토폴로지 정보를 기초로 스위치 통신부(110)를 통해 수신한 패킷의 데이터 경로 및 상기 데이터 경로 상의 스위치에 실행시키는 액션 열을 구할 수 있다.The path calculation module 125 can obtain the data path of the packet received through the switch communication unit 110 and the action column to be executed by the switch on the data path based on the network topology information established in the topology management module 120 .
엔트리 관리 모듈(135)는 경로 계산 모듈(125)에서 계산된 결과, QoS 등의 정책, 사용자 지시 등을 기초로 플로우 테이블, 그룹 테이블, 및 미터 테이블 등의 엔트리로서 엔트리 DB(191)에 등록할 수 있다. 엔트리 관리 모듈(135)은 스위치(20)에 미리 각 테이블의 엔트리가 등록되도록 하거나(proactive), 스위치(20)로부터의 엔트리의 추가 또는 갱신 요구에 응답(reactive)할 수 있다. 엔트리 관리 모듈(135)은 필요에 따라 또는 스위치(10)의 엔트리 소멸 메시지 등에 의해 엔트리 DB(191)의 엔트리를 변경하거나 삭제할 수 있다.The entry management module 135 registers the entry in the entry DB 191 as an entry such as a flow table, a group table, and a meter table based on the result calculated by the route calculation module 125, a policy such as QoS, . The entry management module 135 may proactively register an entry in each table in the
메시지 관리 모듈(130)은 스위치 통신부(110)를 통해 수신한 메시지를 해석하거나, 스위치 통신부(110)를 통해 스위치로 전송되는 후술할 제어기-스위치 메시지를 생성할 수 있다. 제어기-스위치 메시지 중 하나인 상태 변경 메시지는 엔트리 관리 모듈(135)에 따른 엔트리 또는 엔트리 DB(191)에 저장된 엔트르에 기초하여 생성될 수 있다.The message management module 130 may interpret a message received through the switch communication unit 110 or may generate a controller-switch message to be transmitted to the switch through the switch communication unit 110, which will be described later. The status change message, which is one of the controller-switch messages, may be generated based on the entry according to the entry management module 135 or the entry stored in the entry DB 191. [
스위치(20)는 오픈플로우 프로토콜을 지원하는 물리적인 스위치 또는 가상 스위치일 수 있다. 스위치(20)는 수신한 패킷을 처리하여, 네트워크 디바이스(30) 사이의 플로우를 중계할 수 있다. 이를 위해 스위치(20)는 하나의 플로우 테이블 또는 비특허문헌 1에 상술되어 있는 파이프라인(pipeline) 처리를 위해 다중 플로우 테이블을 구비할 수 있다.The
플로우 테이블은 네트워크 디바이스(30)의 플로우를 어떻게 처리할 지의 규칙을 정의한 플로우 엔트리를 포함할 수 있다.The flow table may include a flow entry defining rules for how to handle the flow of
플로우(flow)는 하나의 스위치 관점에서 적어도 하나의 헤더 필드의 값을 공유하는 일련의 패킷들 또는 다중 스위치의 여러 플로우 엔트리(flow entry)들의 조합에 따른 특정 경로의 패킷 흐름을 의미할 수 있다. 오픈플로우 네트워크는 플로우 단위로 경로 제어, 장애 회복, 부하 분산 및 최적화를 행할 수 있다.A flow may refer to a packet flow of a particular path according to a series of packets sharing a value of at least one header field from a single switch or a combination of multiple flow entries of multiple switches. The open-flow network can perform path control, fault recovery, load balancing and optimization on a flow-by-flow basis.
스위치(20)는 다중 스위치의 조합에 따른 플로우의 입구 및 출구 측 에지 스위치(edge switch)(ingress switch and egress switch)와 에지 스위치 사이의 코어 스위치(core switch)로 구분될 수 있다.The
도 3을 참조하면, 스위치(20)는 다른 스위치 및/또는 네트워크 디바이스와 통신하는 포트부(205), 제어기(10)와 통신하는 제어기 통신부(210), 스위치 제어부(200), 및 저장부(290)를 포함할 수 있다.3, the
포트부(205)는 스위치 또는 네트워크 디바이스에서 유출입되는 한 쌍의 포트를 다수 구비할 수 있다. 한 쌍의 포트는 하나의 포트로 구현될 수 있다.The port unit 205 may include a plurality of pairs of ports that are flown out from a switch or a network device. A pair of ports can be implemented as one port.
저장부(290)는 스위치 제어부(210)의 처리 및 제어를 위한 프로그램을 저장할 수 있다. 저장부(290)는 입력되거나 출력되는 데이터들(패킷, 메시지 등)을 임시 저장을 위한 기능을 수행할 수 있다. 저장부(290)는 플로우 테이블, 그룹 테이블, 및 미터 테이블 등의 테이블(291)을 구비할 수 있다. 테이블(230) 또는 테이블의 엔트리는 제어기(10)에 의해 추가, 수정, 삭제될 수 있다. 테이블 엔트리는 자체적으로 파기될 수 있다.The storage unit 290 may store a program for processing and controlling the switch control unit 210. [ The storage unit 290 may perform a function for temporarily storing input or output data (packets, messages, etc.). The storage unit 290 may include a table 291 such as a flow table, a group table, and a meter table. Entries in the table 230 or table may be added, modified, or deleted by the
플로우 테이블은 오픈플로우의 파이프라인(pipeline)을 처리하기 위해 다중 플로우 테이블로 구성될 수 있다. 도 4를 참조하면, 플로우 테이블의 플로우 엔트리는 패킷과 매치하는 조건(대조 규칙)을 기술한 매치 필드(match fields), 우선 순위(priority), 매치되는 패킷이 있는 경우 업데이트되는 카운터(counters), 플로우 엔트리에 매치되는 패킷이 있으면 발생하는 다양한 액션들의 집합인 인스트럭션(instruction), 스위치에서 파기될 시간을 기술하는 타임아웃(timeouts), 제어기에 의해 선택되어지는 오파큐(opaque) 타입으로, 제어기에 의해 플로우 통계, 플로우 변경, 및 플로우 삭제를 필터하기 위해 사용될 수 있으며, 패킷 처리시 사용되지 않는 쿠키(cookie) 등의 튜플(tuple)을 포함할 수 있다. 인스트럭션(instruction)은 다른 플로우 테이블로 패킷을 전달하는 것과 같은 파이프라인 프로세싱의 변경할 수 있다. 또한 인스트럭션은 액션 셋(action set)에 액션을 더하는 액션(action)들의 집합, 또는 패킷에 바로 적용하기 위한 액션들의 리스트를 포함할 수 있다. 액션(action)은 특정 포트로 패킷을 전송하거나, TTL 필드를 감소시키는 것과 같이 패킷을 수정하는 작업을 의미한다. 액션은 플로우 엔트리와 연관된 인스트럭션 집합의 일부 또는 그룹 엔트리와 연관된 액션 버킷에 속할 수 있다. 액션 셋(action set)은 각 테이블에서 지시된 액션이 누적된 집합을 의미한다. 액션 셋은 매치되는 테이블이 없을 때 수행될 수 있다. 도 5는 플로우 엔트리에 의한 여러 패킷 처리를 예시한다.The flow table can be composed of multiple flow tables to handle the pipeline of open flows. 4, a flow entry of a flow table includes match fields describing conditions (matching rules) to match a packet, a priority, counters to be updated when there are packets to be matched, An instruction that is a set of various actions that occurs when there is a packet matched to a flow entry, timeouts that describe the time to be discarded in the switch, and an opaque type that is selected by the controller. Can be used to filter flow statistics, flow changes, and flow deletions, and can include tuples such as cookies that are not used in packet processing. An instruction may change pipeline processing such as forwarding a packet to another flow table. The instructions may also include a collection of actions to add an action to an action set, or a list of actions to apply directly to a packet. An action is an operation that modifies a packet, such as sending a packet to a specific port or decreasing the TTL field. The action may be part of an instruction set associated with the flow entry or belonging to an action bucket associated with the group entry. An action set is an aggregated set of actions indicated in each table. An action set can be performed when no table is matched. 5 illustrates various packet processing by a flow entry.
파이프라인(pipleline)은 패킷과 플로우 테이블 사이의 일련의 패킷 처리 과정을 의미한다. 스위치(20)에 패킷이 유입되면, 스위치(20)는 첫번째 플로우 테이블의 우선 순위가 높은 순서대로 패킷과 매칭되는 플로우 엔트리를 탐색한다. 매칭이 되면 해당 엔트리의 인스트럭션을 수행한다. 인스트럭션은 매칭되면 바로 수행하는 명령(apply-action), 액션 셋의 내용을 지우거나 추가/수정하는 명령(clear-action; write-action), 메타데이터(metadata) 수정 명령(write-metadata), 지정된 테이블로 메타데이터와 함께 패킷을 이동시키는 고우투 명령(goto-table) 등이 있다. 패킷과 매칭되는 플로우 엔트리가 없는 경우, 테이블 설정에 따라 패킷을 폐기(drop)하거나 제어기(10)로 패킷을 패킷-인 메시지(packet-in message)에 실어서 보낼 수 있다.A pipeline is a sequence of packets between a packet and a flow table. When a packet is input to the
그룹 테이블은 그룹 엔트리들을 포함할 수 있다. 그룹 테이블은 플로우 엔트리에 의해 지시되어 추가적인 포워딩 방법들을 제시할 수 있다. 도 6을 참조하면, 그룹 테이블의 그룹 엔트리는 다음과 같은 필드를 구비할 수 있다. 그룹 엔트리를 구분할 수 있는 그룹 식별자(group identifier), 그룹 엔트리에 정의된 액션 버킷들을 일부(select) 또는 전부(all) 수행할 것이 여부에 대한 규칙을 명시한 그룹 타입(group type), 플로우 엔트리의 카운터와 같이 통계를 위한 카운터(counters), 및 그룹을 위해 정의된 파라미터들과 연관된 액션들의 집합인 액션 버킷(action buckets)을 포함할 수 있다.The group table may include group entries. The group table may be indicated by a flow entry to suggest additional forwarding methods. Referring to FIG. 6, the group entry of the group table may include the following fields. A group identifier for identifying a group entry, a group type for specifying a rule for performing a select or all action buckets defined in the group entry, a counter for a flow entry , And action buckets, which are a set of actions associated with the parameters defined for the group.
미터 테이블(meter table)은 미터 엔트리들(meter entries)로 구성되며, 플로우 미터-당(per-flow meters)를 정의한다. 플로우 미터-당은 오픈플로우가 다양한 QoS 작동을 적용될 수 있도록 할 수 있다. 미터(meter)는 패킷의 레이트(rate of packets)를 측정 및 제어할 수 있는 일종의 스위치 요소이다. 도 7을 참조하면, 미터 테이블(meter table)은 미터를 식별하는 미터 식별자(meter identifier), 밴드(band)에 지정된 속도와 패킷 동작 방법을 나타내는 미터 밴드(meter bands), 및 패킷이 미터에서 동작될 때 업데이트되는 카운터(counters) 필드들로 구성된다. 미터 밴드(meter bands)는 패킷이 어떻게 처리되는 지를 나타내는 밴드 타입(band type), 미터에 의해 미터 밴드를 선택하는데 사용되는 레이트(rate), 미터 밴드에 의해 패킷들이 처리될 때 업데이트되는 카운터(counters), 및 선택적인 아규먼트(argument)를 가지는 배드 타입들인 특정 아규먼트 타입(type specific argument)과 같은 필드들로 구성될 수 있다.The meter table is made up of meter entries and defines per-flow meters. The flow meter-party can allow open flows to be applied to various QoS operations. A meter is a kind of switch element that can measure and control the rate of packets. Referring to FIG. 7, a meter table includes a meter identifier identifying the meter, a rate specified in the band and meter bands indicating how the packet is to be operated, And counters fields that are updated when they become available. Meter bands include a band type indicating how the packet is to be processed, a rate used to select the meter band by the meter, counters that are updated when the packets are processed by the meter band, ), And a type specific argument, which is a bad type with optional arguments.
스위치 제어부(210)는 통상적으로 상기 각 부의 동작을 제어하여 스위치(200)의 전반적인 동작을 제어할 수 있다. 제어부(210)는 테이블(291)을 관리하는 테이블 관리 모듈(240), 플로우 검색 모듈(220), 플로우 처리 모듈(230), 및 패킷 처리 모듈(235)를 포함할 수 있다. 각 모듈은 제어부(110) 내에 하드웨어로 구성될 수 있고, 제어부(110)와 별개의 소프트웨어로 구성될 수도 있다.The switch control unit 210 can control the overall operation of the switch 200 by controlling the operations of the respective units. The control unit 210 may include a table management module 240 that manages the table 291, a flow search module 220, a flow processing module 230, and a packet processing module 235. Each module may be configured in hardware in the control unit 110 and may be configured in software separate from the control unit 110. [
테이블 관리 모듈(240)은 제어기 통신부(210)를 통해 제어기(10)로부터 수신한 엔트리를 적절한 테이블에 추가하거나, 타임 아웃(time out)된 엔트리를 주기적으로 제거할 수 있다.The table management module 240 may add the entry received from the
플로우 검색 모듈(220)은 유저 트래픽으로서 수신한 패킷으로부터 플로우 정보를 추출할 수 있다. 플로우 정보는 에지 스위치의 패킷 유입 포트인 입구 포트(ingress port)의 식별 정보, 해당 스위치의 패킷 유입 포트(incoming port)의 식별 정보, 패킷 헤더 정보(송신원 및 목적지의 IP 주소, MAC 주소, 포트, 및 VLAN 정보 등), 및 메타데이터 등을 포함할 수 있다. 메타데이터는 이전 테이블에서 선택적으로 추가되거나, 다른 스위치에서 추가된 데이터일 수 있다. 플로우 검색 모듈(220)은 추출한 플로우 정보를 참조하여 테이블(291)에 수신 패킷에 대한 플로우 엔트리가 있는지 검색할 수 있다. 플로우 검색 모듈(220)은 플로우 엔트리가 검색되면, 플로우 처리 모듈(260)에 검색된 플로우 엔트리에 따라 수신 패킷을 처리하도록 요청할 수 있다. 만일 플로우 엔트리 검색이 실패하면, 플로우 검색 모듈(220)은 수신 패킷 또는 수신 패킷의 최소한의 데이터를 제어기 통신부(210)를 통해 제어기(100)로 전송할 수 있다.The flow search module 220 may extract flow information from the received packet as user traffic. The flow information includes identification information of an ingress port as a packet inflow port of the edge switch, identification information of an incoming port of the switch of the switch, packet header information (IP address of the source and destination, MAC address, port, And VLAN information, etc.), metadata, and the like. The metadata may be optionally added in the previous table or may be data added in another switch. The flow search module 220 can search the table 291 for a flow entry for a received packet by referring to the extracted flow information. The flow search module 220 may request the flow processing module 260 to process the received packet according to the retrieved flow entry, if a flow entry is found. If the flow entry search fails, the flow search module 220 may transmit the minimum data of the received packet or the received packet to the controller 100 through the controller communication unit 210.
플로우 처리 모듈(230)는 플로우 검색 모듈(220)에서 검색된 엔트리에 기술된 절차에 따라 패킷을 특정 포트 또는 다중 포트로 출력하거나, 드롭시키거나 또는 특정 헤더 필드를 수정하는 등의 액션을 처리할 수 있다.The flow processing module 230 may process an action, such as outputting a packet to a specific port or multiple ports, dropping it, or modifying a specific header field, in accordance with the procedure described in the entry retrieved from the flow search module 220 have.
플로우 처리 모듈(230)는 플로우 엔트리의 파이프라인 프로세스를 처리하거나 액션을 변경하기 위한 인스트럭션을 실행하거나 다중 플로우 테이블에서 더 이상 다음 테이블로 갈 수 없을 때 액션 세트를 실행할 수 있다.The flow processing module 230 may execute an action set to execute a pipeline process of a flow entry, execute an instruction to change an action, or execute a set of actions when it is no longer possible to go to the next table in a multi-flow table.
패킷 처리 모듈(235)은 플로우 처리 모듈(230)에 의한 처리된 패킷을 플로우 처리 모듈(230)에서 지정한 포트부(205)의 하나 또는 2 이상의 포트로 실제로 출력할 수 있다.The packet processing module 235 can actually output the processed packet by the flow processing module 230 to one or more ports of the port unit 205 specified by the flow processing module 230. [
도 1에 도시되어 있지 않지만, SDN 네트워크 시스템은 가상 네트워크 디바이스, 가상 스위치 등을 생성, 변경 및 삭제하는 오케스트레이터를 더 포함할 수 있다. 오케스트레이터는 가상 네트워크 디바이스를 생성하는 경우, 가상 네트워크가 접속할 스위치의 식별 정보, 해당 스위치에 연결되는 포트 식별 정보, MAC 주소, IP 주소, 터넨트(tenant) 식별 정보 및 네트워크 식별 정보 등의 네트워크 디바이스의 정보를 제어기(10)로 제공할 수 있다.Although not shown in FIG. 1, the SDN network system may further include an orchestrator for creating, changing, and deleting virtual network devices, virtual switches, and the like. When an orchestrator creates a virtual network device, the orchestrator generates a virtual network device such as a network device, such as identification information of a switch to be connected to the virtual network, port identification information connected to the switch, MAC address, IP address, tenant identification information, To the controller (10).
제어기(10)와 스위치(20)는 다양한 정보를 주고 받는데, 이를 오픈플로우 프로토콜 메시지(openflow protocol message)라 칭한다. 이러한 오픈플로우 메시지는 제어기-스위치 메시지(controller-to-switch message), 비동기 메시지(asynchronous message), 및 대칭 메시지(symmetric message) 등의 타입이 있다. 각 메시지는 엔트리를 식별하는 트랜잭션 식별자(transaction id; xid)를 헤더에 구비할 수 있다.The
제어기-스위치 메시지는 제어기(10)가 생성하여 스위치(20)에 전달하는 메시지로써, 주로 스위치(20)의 상태를 관리하거나 점검하기 위해 사용된다. 제어기-스위치 메시지는 제어기(10)의 제어부(100), 특히 메시지 관리 모듈(130)에 의해 생성될 수 있다.The controller-switch message is a message generated by the
제어기-스위치 메시지는 스위치의 능력(capabilities)을 문의하는 기능(features), 스위치(20)의 구성 매개 변수 등의 설정을 문의하고 설정하기 위한 설정(configuration), 오픈플로우 테이블의 플로우/그룹/미터 엔트리들을 추가/삭제/수정하기 위한 상태 변경 메시지(modify state message), 패킷-인 메시지를 통해 스위치로부터 수신한 패킷을 해당 스위치 상의 특정한 포트로 전송하도록 하는 패킷-아웃 메시지(packet-out message) 등이 있다. 상태 변경 메시지는 플로우 테이블 변경 메시지(modify flow table message), 플로우 엔트리 변경 메시지(modify flow entry message), 그룹 엔트리 변경 메시지(modify group entry message), 포트 변경 메시지(prot modification message), 및 미터 엔트리 변경 메시지(meter modification message) 등이 있다.The controller-switch message includes features inquiring about the capabilities of the switch, configuration for inquiring and setting the settings of the configuration parameters of the
비동기 메시지는 스위치(20)가 생성하는 메시지로서, 스위치의 상태 변경 및 네트워크 이벤트 등을 제어기(10)에서 업테이트하기 위해 사용된다. 비동기 메시지는 스위치(20)의 제어부(200), 특히 플로우 검색 모듈(220)에 의해 생성될 수 있다.The asynchronous message is a message generated by the
비동기 메시지로 패킷-인 메시지(packet-in message), 플로우 삭제 메시지(flow-removed), 에러 메시지 등이 있다. 패킷-인 메시지는 스위치(20)가 제어기(10)에게 패킷을 전송하여 패킷에 대한 제어를 받기 위해 사용된다. 패킷-인 메시지는 스위치(20)가 미지의 패킷을 수신한 경우, 데이터 경로를 요구하기 위해, 오픈플로우 스위치(20)에서 제어기(10)로 전송되는 수신 패킷 또는 그 사본의 전부 또는 일부를 포함하는 메시지이다. 유입 패킷에 연관된 엔트리의 액션이 제어기로 보내라고 정해져 있을 때에도 패킷-인 메시지가 사용된다. 삭제된 플로우(flow-removed) 메시지는 플로우 테이브에서 삭제할 플로우 엔트리 정보를 제어기(10)로 전달하기 위해 사용된다. 이 메시지는 제어기(10)가 스위치(20)에 해당 플로우 엔트리 삭제를 요청하였거나 플로우 타임아웃(timeout)에 의한 플로우 만기 처리(flow expiry process)에서 발생한다.Asynchronous messages include packet-in messages, flow-removed messages, and error messages. The packet-in message is used by the
대칭 메시지는 제어기(10) 및 스위치(20) 모두에서 생성되며, 상대방의 요청이 없어도 전송되는 특징이 있다. 제어기와 스위치 간에 연결을 개시할 때 사용되는 헬로(hello), 제어기 및 스위치 간 연결에 이상이 없음을 확인하기 위한 에코(echo), 및 제어기나 스위치에 의해 사용되며 문제를 반대측에 알리기 위한 에러 메시지(error message) 등을 포함할 수 있다. 에러 메시지는 대부분 제어기에 의해 개시된 요청에 따른 실패를 나타나기 위해 스위치에서 사용된다.
The symmetric message is generated in both the
도 6은 본 발명의 일 실시예에 따른 네트워크 시스템의 블록 구성도, 도 7은 본 발명의 다른 실시예에 따른 네트워크 시스템의 블록 구성도, 도 8은 본 발명의 도 7의 네트워크 시스템에서의 신호 흐름도이다. 도 1 내지 도 5를 참조한다.FIG. 6 is a block diagram of a network system according to an embodiment of the present invention. FIG. 7 is a block diagram of a network system according to another embodiment of the present invention. FIG. Please refer to Figs. 1 to 5.
도 6을 참조하면, 이동 네트워크 시스템은 이동 단말(30), 제1 및 제2 무선 엑세스 망(40-1, 40-2), SDN(Software Defined Network) 기반의 코어망(60), 및 SDN 기반의 제어기(10)를 포함할 수 있다. 동일하거나 유사한 구성요소에 대한 자세한 설명은 도 1 내지 도 5를 참조한다.Referring to FIG. 6, the mobile network system includes a
이동 단말(30)은 도 1의 네트워크 디바이스에 대응할 수 있다. 이동 단말(30)은 무선 송수신이 가능한 이동통신 단말기 또는 스마트폰이거나, 이동 통신 모듈 또는 무선 통신 모듈을 구비한 피씨, 노트, 스마트 패드 등인 것이 바람직하다.The
이동 단말(30)은 복수의 통신 모듈(31, 32)을 포함할 수 있다. 제1 및 제2 통신 모듈(31, 32)은 서로 다른 종류의 네트워크 인터페이스일 수 있다. 본 실시예에서 네트워크 인터페이스는 무선 인터페이스인 것이 바람직하다.The
이동 단말(30)은 SDN 에이전트를 포함하거나 SDN 기반일 수 있다. SDN 에이전트는 SDN 기반의 메시지(예를 들어, 오픈플로우 규약 메시지)를 해석 및/또는 생성할 수 있는 기능을 포함할 수 있다. SDN 에이전트는 OS나 커널의 일부 또는 어플리케이션에 탑재될 수 있다.The
무선 엑세스 망(Radio Access Network)은 복수의 망(40-1, 40-2)으로 구성될 수 있다. 각 무선 엑세스 망(40-1, 40-2)은 서로 다른 종류의 무선 네트워크 규약 또는 인터페이스를 가질 수 있다.The radio access network may comprise a plurality of networks 40-1 and 40-2. Each of the wireless access networks 40-1 and 40-2 may have different kinds of wireless network protocols or interfaces.
이동 네트워크 시스템은 제1 및 제2 무선 엑세스 장치(기지국; 41, 42)를 포함 할 수 있다. 각 기지국(41, 42)은 적어도 하나의 이동 단말(30)과 무선 인터페이스를 통해 코어 망(65) 또는 외부 네트워크(60)와 같은 하나 이상의 통신 네트워크에 접근하도록 구성된 임의의 장치일 수 있다. 예를 들어, 기지국(41, 42)은 BTS(Base Transceiver Station; BTS), 노드-B, e노드 B, 홈 노드 B, 홈 e노드 B, 사이트 제어기, 엑세스 포인트(access point; AP), 무선 라우터 등일 수 있다. 본 실시예에서 각 기지국(41, 42)이 단일 요소로 도시되어 있지만, 기지국은 임의의 수로 상호 접속된 기지국 및/또는 네트워크 요소를 포함할 수 있다. The mobile network system may include first and second radio access devices (base stations) 41 and 42. Each
제1 무선 엑세스 망(40-1)은 기지국 그 자체이거나 기지국 제어기(Base Station Controller; BSC), 라디오 네트워크 제어기(Radio Network Controller; RNC), 릴레이 노드 등과 같은 다른 기지국 및/또는 네트워크 요소를 더 포함할 수 있다. 제1 기지국(41)은 셀이라고 칭하는 특정 영역 내에서 무선 신호를 송수신하도록 구성될 수 있다. 셀은 복수의 셀 섹터로 세분될 수 있다.The first radio access network 40-1 may be a base station itself or may include other base stations and / or network elements such as a base station controller (BSC), a radio network controller (RNC), a relay node, can do. The
이동 네트워크 시스템은 다중 접근 시스템일 수 있고, CDMA, TDMA, FDMA, OFDMA, SC-FDMA 등과 같은 하나 이상의 채널 접근 방식을 이용할 수 있다. 예를 들면, 무선 엑세스 망 내의 기지국(41 및/또는 42)과 이동 단말(30)은 광대역 CDMA(WCDMA)를 이용하여 무선 인터페이스를 확립하는 범용 이동통신 시스템(UMTS) 지상 라디오 액세스(UTRA)와 같은 무선 기술을 구현할 수 있다. WCDMA는 고속 패킷 액세스(HSPA) 또는 진화형 HSPA(HSPA+)와 같은 통신 프로토콜을 포함할 수 있다. HSPA는 고속 다운 링크 패킷 액세스(HSDPA) 또는 고속 업링크 패킷 액세스(HSUPA)를 포함할 수 있다. 다른 실시형태에 있어서, 기지국(41 및/또는 42)과 이동 단말(30)은 롱텀 에볼루션(LTE) 및/또는 LTE-어드밴스드(LTE-A)를 이용하여 무선 인터페이스를 확립하는 진화형 UMTS 지상 라디오 액세스(E-UTRA)와 같은 무선 기술을 구현할 수 있다.The mobile network system may be a multiple access system and may employ one or more channel approaches such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, and the like. For example, the
다른 실시형태에 있어서, 기지국(41 및/또는 42)과 이동 단말(30)은 IEEE 802.16(즉, WiMAX(Worldwide Interoperability for Microwave Access)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, 잠정 표준 2000(IS-2000), 잠정 표준 95(IS-95), 잠정 표준 856(IS-856), 글로벌 이동통신 시스템(GSM), EDGE(Enhanced Data rates for GSM Evolution), GSM EDGE(GERAN) 등과 같은 무선 기술을 구현할 수 있다.In other embodiments, the
기지국(41 및/또는 42)은 무선 라우터, 홈 노드 B, 홈 e노드 B, 또는 AP일 수 있고, 사업장, 홈, 자동차, 캠퍼스 등과 같은 국소 지역에서 무선 접속을 가능하게 하는 임의의 적당한 무선 엑세스 망을 이용할 수 있다. 일실시형태에 있어서, 기지국(40)과 이동 단말(30)은 IEEE 802.11(WiFi)과 같은 무선 기술을 구현하여 무선 근거리 통신망(WLAN)을 확립할 수 있다. 다른 실시형태에 있어서, 기지국(41 및/또는 42)과 이동 단말(30)은 IEEE 802.15와 같은 무선 기술을 구현하여 무선 개인 통신망(WPAN)을 확립할 수 있다. 또 다른 실시형태에 있어서, 기지국(40)과 이동 단말(30)은 셀룰러 기반 무선 엑세스 망(예를 들면, WCDMA, CDMA2000, GSM, LTE, LTE-A 등)를 이용하여 피코셀 또는 펨토셀을 확립할 수 있다.The
기지국(41 및/또는 42)은 SDN 에이전트를 탑재할 수 있다. 기지국(41 및/또는 42)은 코어 망(65)의 SDN 기반의 스위치(20) 및/또는 제어기(10)와 통신할 수 있다. 본 통신 규약은 오픈플로우(openflow) 규약을 따를 수 있으며, 이에 한정되지 않는다. 기지국(40)은 도 1 및 도 3의 스위치의 기능 또는 구성요소를 가지거나 더 추가된 기능 또는 요소를 가질 수 있다.The
무선 엑세스 망은 코어 망(core network)(65)과 통신하고, 코어 망은 하나 이상의 이동 단말(30)에게 음성, 데이터, 애플리케이션 및/또는 인터넷을 통한 음성 프로토콜(voice over internet protocol; VoIP) 서비스를 제공하도록 구성된 임의 유형의 네트워크일 수 있다. 예를 들면, 코어 망은 호출 제어, 빌링(billing) 서비스, 모바일 위치 기반 서비스, 선불 통화, 인터넷 접속, 영상 분배 등을 제공할 수 있고, 또한 사용자 인증과 같은 고급 보안 기능을 수행할 수 있다. 비록 도 6에 도시되어 있지 않지만, 무선 엑세스 망 또는 코어 망과 동일한 무선 엑세스 망 또는 다른 무선 엑세스 망을 이용하는 다른 무선 엑세스 망과 직접 또는 간접 통신을 할 수 있다. 예를 들면, E-UTRA 무선 기술을 이용하는 무선 엑세스 망에 접속되는 것 외에, 코어 망은 GSM 무선 기술을 이용하는 다른 무선 엑세스 망(도시 생략됨)과도 통신할 수 있다.The wireless access network communicates with a
코어 망(65)은 이동 단말(30)이 PSTN, 인터넷 및 외부 네트워크(60)에 접속하게 하는 게이트웨이로서 기능할 수 있다. PSTN은 재래식 전화 서비스(plain old telephone service; POTS)를 제공하는 회선 교환식 전화망을 포함할 수 있다. 외부 네트워크(60)는 다른 서비스 공급자에 의해 소유되거나 운용되는 유선 또는 무선 통신 네트워크를 포함할 수 있다. 외부 네트워크(60)는 ISP(Internet Service Provider), 다른 코어 네트워크, 및 공용 데이터 네트워크(인터넷) 등을 포함할 수 있다. The
본 실시예에서, 코어 망(65)은 SDN 기반의 오픈플로우 규약을 만족하는 오픈플로우 스위치(20)를 포함할 수 있다. 오픈플로우 스위치(20)에 대한 자세한 설명은 도 1 또는 도 3의 내용을 참조한다. In the present embodiment, the
무선 엑세스 망이 EUTRAN(Evolved Universal Terrestrial Radio Access Network)를 포함하는 LTE 시스템을 이용하는 경우, 오픈플로우 스위치(20)는 서빙 게이트웨이(S-GW) 및 패킷 데이터 네트워크(PDN) 게이트웨이(P-GW) 중 적어도 어느 하나로 운영되거나 각 게이트웨이의 적어도 일부 기능을 수행할 수 있다. 오픈플로우 스위치(20)는 서빙 게이트웨이 및 PDN 게이트웨이 기능의 두 스위치로 구성될 수 있다. 기지국은 LTE 시스템에서 eNode B(eNB)로 명명될 수 있다. When the wireless access network uses an LTE system including an Evolved Universal Terrestrial Radio Access Network (EUTRAN), the
제어기(10)는 SDN 기반 또는 SDN 에이전트가 탑재된 구성요소와 통신하며, 해당 구성요소를 제어할 수 있다. 본 실시예에서 제어기(10)는 코어 망의 오픈플로우 스위치(20)와 오픈플로우 규약으로 통신할 수 있다. 제어기(10)에 대한 자세한 설명은 도 1 및 도 2의 내용으로 대체한다.The
이하, 여러 무선 인터페이스 중 제1 무선 엑세스 망(40-1)은 LTE 시스템을 이용하고, 제2 무선 엑세스 망(40-2)은 WiFi 시스템을 이용하는 것에 대해 대표적으로 기술한다. Hereinafter, the first wireless access network 40-1 and the second wireless access network 40-2 among the various wireless interfaces use the LTE system and the WiFi system, respectively.
도 7을 참조하면, 이동 네트워크 시스템은 이동 단말(30), eNode B(eNB)(41), AP(42), 스위치(20), 제어기(10), 및 코어 망(65)을 포함할 수 있다. 각 요소는 SDN 기반이거나, SDN 에이전트를 구비할 수 있다.7, the mobile network system may include a
도 6의 이동 단말(30)의 제1 통신 모듈(31)은 LTE 모듈(31)로, 제2 통신 모듈(32)은 WiFi 모듈(32)로, 제1 무선 엑세스 장치(41)는 eNB(41)로, 제2 무선 엑세스 장치(42)는 AP(42)로 구성될 수 있다. LTE 무선 엑세스 망(40-1) 및 WiFi 무선 엑세스 망(40-2)은 도 6의 제1 및 제2 무선 엑세스 망(40-1, 40-2)와 대응될 수 있다.The
스위치(20)는 코어망(65) 외부에 배치되는 것으로 되시되어 있지만 이에 한정되지 않는다. 예를 들어, 스위치(20)는 도 6에서 기술한 바와 같이 코어망(65)의 일부일 수 있다. 코어망(65)은 LTE 시스템의 코어 망을 그대로 포함할 수 있다. 코어망(65)은 ISP(Internet Service Provider) 및/또는 DHCP(Dynamic Host Configuration Protocol) 서버를 포함할 수 있다. 본 실시예에서 외부 네트워크는 인터넷 등의 공용 데이터 네트워크일 수 있다.The
AP(42)는 외부 인터넷과 직접 연결될 수 있다. 또는 AP(42)는 코어망(65)를 통해 외부 인터넷과 직접 연결될 수 있다. 이에 AP(42)는 외부 네트워크(60)를 통해 스위치(20)와 간접적으로 통신할 수 있다. 도시된 바와 같이, AP(42)와 스위치(20)는 직접 통신할 수도 있다.The
이하, 도 7 및 도 8을 참조하여 최초에 이동 단말(30)이 LTE 무선 인터페이스를 통해 접속하는 것부터 설명한다.Hereinafter, the
이동 단말(30)이 LTE 무선 엑세스 망(femtocell)에 접속하면, LTE 모듈(31)은 eNB(41)에 IP 주소를 요청할 수 있다(S410). 이동 단말(30)은 무선 네트워크의 접속 초기 즉, 다른 무선 네트워크에 접속된 적이 없다는 내용을 구비하여 IP 주소 요청 메시지를 생성하거나, 이러한 내용 없이 IP 주소 요청 메시지를 생성할 수 있다. 이동 단말(30)은 다른 무선 모듈 예를 들어, WiFi 모듈(32)를 통해 다른 무선 네트워크에 접속되어 있는 상태임을 알리는 망 변경 알림을 IP 주소 요청 메시지에 포함시키고, 최초로 접속되는 경우 망 변경 알림을 포함시키지 않을 수 있다. 본 실시예에서, 이동 단말(30)은 망 변경 알림이 불포함된 IP 주소 요청 메시지(IP add req.)를 생성한다고 가정한다.When the
eNB(41)는 스위치(20)에 IP 주소 요청 메시지(IP add req.)를 전송할 수 있다(S415). 스위치(20)는 LTE 모듈(31)의 IP 주소 요청 메시지에 망 변경 알림이 포함되어 있는 지 판단한다. 스위치(20)는 IP 주소 요청 메시지에 망 변경 알림이 포함되어 있으면 제어기(10)로 IP 주소 요청 메시지를 전송하고, IP 주소 요청 메시지에 망 변경 알림이 포함되어 있지 않으면 IP 주소 발급 서버로 IP 주소 요청 메시지를 전송한다. IP 주소 발급 서버(미도시)는 별도의 서버로 운영되거나, DHCP(Dynamic Host Configuration Protocol) 서버 또는 LTE 코어 망의 P-GW 중 어느 하나일 수 있다. P-GW는 DHCP 서버와 연동하여 IP 주소를 할당해 줄 수 있다.the
본 과정에서 최초 접속이므로 IP 주소 요청 메시지에 망 변경 알림이 포함되어 있지 않다. 따라서 스위치(20)는 IP 주소 발급 서버로 IP 주소 요청 메시지를 전송하여 IP 주소 발급 서버에서 할당한 IP 주소(IP add)를 수신할 수 있다(S420). 스위치(20)는 수신한 IP 주소를 eNB(41)를 통해 LTE 모듈(31)로 전송할 수 있다(S430, S435). 본 IP 주소 설정은 LTE 모듈(31)의 무선 네트워크 설정의 일종으로, LTE 모듈(31)에 의해 무선 네트워크 설정이 완료되면 이동 단말(30)은 LTE 모듈(31)을 인터페이스로 하여 eNB(41)를 통해 스위치(20)와 트래픽을 주고 받을 수 있다(S440).Since this is the first connection in this process, the IP address request message does not include the network change notification. Accordingly, the
스위치(20)는 IP 주소 요청 메시지를 받거나(S415) 트래픽을 송수신할 때(S440), 플로우 테이블에 없는 플로우에 대해 제어기(10)로 플로우 처리를 문의하여 플로우 엔트리를 업데이트할 수 있다. 이러한 과정은 본 명세서 전반에 걸쳐 적용될 수 있다.When the
LTE 모듈(31)과 스위치(20) 사이의 경로 설정이 완료(S440)되면, 제어기(10)는 이동 단말(30)의 LTE 모듈(31)의 IP 주소를 포함하는 이동 단말 네트워크 정보가 있는 지 판단할 수 있다. 해당 단말의 네트워크 정보가 없는 경우, 제어기(10)는 이동 단말(30)의 네트워크 정보를 요청하는 이동 단말 네트워크 정보 요청 메시지(NW info req.)를 생성하여 스위치(20)로 전송할 수 있다(S445). 스위치(20)는 수신한 이동 단말 네트워크 정보 요청 메시지(NW info req.)를 eNB(41)에 전송할 수 있다(S450). eNB(41)는 수신한 이동 단말 네트워크 정보 요청 메시지(NW info req.)를 LTE 모듈(31)을 통해 이동 단말(30)로 전송할 수 있다(S455).When the path setting between the
이동 단말(30)은 이동 단말 네트워크 정보 요청 메시지(NW info req.)를 수신하면, WiFi 모듈(32)의 식별 정보를 포함하는 이동 단말 네트워크 정보(NW info)를 생성할 수 있다. WiFi 모듈(32)의 식별 정보는 MAC 주소인 것이 바람직하다. 이동 단말 네트워크 정보(NW info)는 LTE 모듈(31)의 IP 주소를 더 포함할 수 있다. 다만, LTE 모듈(31)의 IP 주소는 스위치(20)를 통해 제어기(10)에서 미리 취득할 수도 있으며, 이동 단말(30)이 자체적으로 LTE 모듈(31)의 IP 주소 정보를 제어기(10)로 전송할 수도 있다. 이동 단말 네트워크 정보(NW info)는 디폴트 게이트웨이 정보, 서브넷 마스크, DNS(Domain Name Server) 정보 등을 더 포함할 수 있다.Upon receiving the mobile terminal network information request message (NW info req.), The
이동 단말(30)은 이동 단말 네트워크 정보 요청 메시지에 대응하여 이동 단말 네트워크 정보(NW info)로 응신할 수 있다. 이동 단말 네트워크 정보(NW info)는 LTE 모듈(31), eNB(41), 및 스위치(20)를 거쳐 제어기(10)로 전송될 수 있다(S460, S465, S470). 제어기(10)는 수신한 이동 단말 네트워크 정보를 데이터베이스화하여 저장할 수 있다. 위에서 언급된 요청 메시지나 정보 메시지 등은 패킷에 포함된 내용으로 필요에 따라 네트워크 요소에서 패킷에 수정을 가할 수 있다. 이는 명세서 전반에 걸쳐 적용될 수 있다.The
eNB(41)은 이동 단말(30)과의 베어러 상태(bearer status) 등의 네트워크 상태를 스위치(20)를 통해 제어기(10)로 전송할 수 있다(S475, S480).the
제어기(10)는 베어러 등의 네트워크 상태, QoS 정책, 이동 단말(30) 사용자의 요청, 및/또는 제어기(10)의 관리자의 망 변경 설징 지시 등 여러 요인에 기초하여, 이동 단말(30) 및 스위치(20) 사이의 트래픽 경로 변경을 결정할 수 있다(S510). 이러한 망 변경 또는 트래픽 경로 변경은 일종의 핸드오버(handover)으로서, 이동 통신망과 WiFi 망이 서로 연동되도록 할 수 있다.Based on various factors such as the network status of the bearer and the like, the QoS policy, the request of the user of the
이동 단말(30)의 핸드오버를 결정하면(S510), 제어기(10)는 이동 단말(30)이 무선 인터페이스를 변경하도록 하는 명령이 포함된 인터페이스 변경 메시지(I/F mod msg.)를 생성하여 이동 단말(30)로 전송할 수 있다. 제어기(10)는 복수의 동일한 무선 엑세스 장치 중 이동 단말(30)이 접속할 특정 무선 엑세스 장치를 지정할 수 있다. 즉, 제어기(10)는 복수의 AP 중 이동 단말(30)이 접속할 특정 AP를 지정할 수 있다. 제어기(10)의 특정 AP 지정은 LTE 및 WiFi 신호 세기, 이동 단말(30) 및 복수의 AP의 위치 관계 등이 고려될 수 있다. 이에 인터페이스 변경 메시지(I/F mod msg.)는 지정된 AP로 이동단말의 핸드오버 동작이 실행되도록 하는 명령을 포함할 수 있다. 인터페이스 변경 메시지(I/F mod msg.)는 지정된 AP(42)의 접속에 필요한 SSID 정보를 더 포함할 수 있다. 인터페이스 변경 메시지(I/F mod msg.)는 AP(42)과의 암호화 통신에 필요한 무선 암호키를 더 포함할 수 있다.When the handover of the
인터페이스 변경 메시지(I/F mod msg.)는 스위치(20) 및 eNB(41)를 통해 LTE 모듈(31)로 전송될 수 있다(S515, S520, S525).The interface change message (I / F mod msg) may be transmitted to the
이동 단말(30)은 LTE 모듈(31)을 통해 인터페이스 변경 메시지(I/F mod msg.)를 수신하면, WiFi 모듈(32)을 활성화할 수 있다(S530). 이동 단말(30)은 WiFi 모듈(32) 활성화와 동시에 LTE 모듈(31)을 비활성화할 수 있다(S535). 그러나 LTE 모듈(31)은 핸드오버가 종료된 이후에 비활성화되는 것이 더 바람직하다. 필요에 따라서 이동 단말(30)은 LTE 모듈(31)의 활성화를 계속 유지할 수 있다. 이 경우 이동 단말(30)은 LTE 모듈(31) 및 WiFi 모듈(32)에 트래픽을 분배하거나 스위치(20)에 의해 다중 경로에 트래픽 분배할 수 있다. 이러한 트래픽 분배는 네트워크의 로드 부담을 경감시킬 수 있다.When the
WiFi 모듈(32)이 활성화되면, WiFi 모듈(32)은 IP 주소를 AP(42)에 요청할 수 있다(S540). IP 주소 요청은 DHCP 메시지(DHCP req.)일 수 있다. DHCP 메시지는 WiFi 모듈(32)의 식별정보 즉 MAC 주소를 포함할 수 있다. DHCP 메시지는 망 변경 알림을 포함할 수 있다.When the
AP(42)는 수신한 DHCP 메시지를 스위치(20)로 전송할 수 있다(S545). 스위치(20)는 주소 요청 메시지에 망 변경 알림이 포함되어 있는지 판단하여, 망 변경 알림 있는 DHCP 메시지에 포함된 WiFi 모듈(32)의 MAC 주소를 제어기(10)에 전송할 수 있다(S550).The
제어기(10)는 스위치(20)로부터 MAC 주소를 수신하면, 이동 단말 네트워크 정보 리스트 중 해당 MAC 주소를 포함하는 이동 단말 네트워크 정보를 검색할 수 있다. 검색된 이동 단말 네트워크 정보를 기초로 네트워크 설정 정보를 생성할 수 있다. 본 실시예에서 제어기(10)는 LTE 모듈(31)의 IP 주소와 동일한 IP 주소를 포함하는 WiFi 모듈(32)에 대한 네트워크 설정 정보를 생성한다. 연속적인 트래픽 송수신을 유지할 수 있는 핸드오버가 이루어지기 위해서이다. 네트워크 설정 정보는 디폴트 게이트웨이 정보, 서브넷 마스크, DNS 정보 등을 포함할 수 있다. 제어기(10)는 생성된 네트워크 설정 정보(config info)를 WiFi 모듈(32)로 전송할 수 있다. 네트워크 설정 정보(config info)는 제어기(10)에서 스위치(20) 및 AP(42)를 경유하여 WiFi 모듈(32)로 전송될 수 있다(S560, S565, S570).Upon receiving the MAC address from the
이동 단말(30)은 WiFi 모듈(32)을 통해 수신한 네트워크 설정 정보를 기초로 WiFi 모듈(32)에 대한 네트워크 설정을 완료할 수 있다. WiFi 모듈(32)에 대한 네트워크 설정이 완료되면, 이동 단말(30)은 인터페이스 변경 완료 메시지(I/F change complete Msg.)를 생성할 수 있다. 인터페이스 변경 완료 메시지(I/F change complete Msg.)는 WiFi 모듈(32)에서 AP(42) 및 스위치(20)을 통해 제어기(10)로 전송될 수 있다(S580). 이동 단말(30)은 WiFi 네트워크를 통해 스위치(20)와 트래픽을 송수신할 수 있다(S600).The
인터페이스 변경 완료 메시지(I/F change complete Msg.)에 의해 이동 단말(30)의 인터페이스 변경이 완료되었음을 인지하면, 스위치(20)는 eNB(41)와의 경로를 폐쇄할 수 있다(S590). 이동 단말(30)은 인터페이스 변경 완료 메시지(I/F change complete Msg.)를 생성과 동시 또는 그 후에 LTE 모듈(31)을 비활성화할 수 있다. 망 경로 폐쇄 및 LTE 모듈(31)의 비활성화 여부 및 그 시기는 선택적일 수 있다. 앞서 설명한 바와 같이, LTE 모듈(31)과 스위치(20) 사이의 데이터 경로를 유지하는 경우, 이동 단말(30) 또는 스위치(20)는 네트워크 상태 및 기설정된 정책 등에 따라 트래픽을 다중 경로로 분배할 수도 있다.
The
상기 본 발명은 하드웨어 또는 소프트웨어에서 구현될 수 있다. 구현은 상기 본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The present invention can be implemented in hardware or software. The present invention can also be embodied as computer readable code on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission via the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.
본 발명의 실시예들은 여기에 설명된 방법들 중 하나가 실행되는 프로그램가능 컴퓨터 시스템으로 운영될 수 있는, 전자적으로 판독가능한 제어 신호들을 갖는 캐리어 웨이브를 포함할 수 있다. 본 발명의 실시예들은 프로그램 코드를 갖는 컴퓨터 프로그램 제품으로서 구현될 수 있으며, 프로그램 코드는 컴퓨터 프로그램이 컴퓨터 상에서 구동될 때 방법들 중 하나를 실행하기 위하여 운영된다. 프로그램 코드는 예를 들면 기계 판독가능 캐리어 상에 저장될 수 있다. 본 발명의 일실시예는 컴퓨터 프로그램이 컴퓨터 상에 구동될 때, 여기에 설명된 방법들 중 하나를 실행하기 위한 프로그램 코드를 갖는 컴퓨터 프로그램일 수 있다. 본 발명은 위에서 설명한 방법들 중 하나를 실행하기 위한 컴퓨터, 또는 프로그램가능 논리 장치를 포함할 수 있다. 위에서 설명한 방법들의 일부 또는 모든 기능을 실행하기 위하여 프로그램가능 논리 장치(예를 들면, 필드 프로그램가능 게이트 어레이, 상보성 금속 산화물 반도체 기반 논리 회로)가 사용될 수 있다.Embodiments of the present invention may include a carrier wave having electronically readable control signals, which may be operated with a programmable computer system in which one of the methods described herein is implemented. Embodiments of the present invention may be implemented as a computer program product having program code, wherein the program code is operated to execute one of the methods when the computer program is run on a computer. The program code may be stored on, for example, a machine readable carrier. One embodiment of the invention may be a computer program having program code for executing one of the methods described herein when the computer program is run on a computer. The present invention may include a computer, or programmable logic device, for performing one of the methods described above. A programmable logic device (e.g., a field programmable gate array, a complementary metal oxide semiconductor based logic circuit) may be used to perform some or all of the functions described above.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes and modifications may be made by those skilled in the art without departing from the spirit and scope of the present invention.
10: 제어기
20: SDN 스위치
30: 이동 단말
40: 무선 엑세스 망10: controller 20: SDN switch
30: mobile terminal 40: wireless access network
Claims (14)
상기 제1 및 제2 통신 모듈과 각각 무선 통신하는 SDN 기반의 제1 및 제2 무선 엑세스 장치;
상기 제1 및 제2 무선 엑세스 장치와 유선 또는 무선 통신하며, 상기 제1 및 제2 무선 엑세스 장치를 통해 상기 이동 단말과 외부 네트워크 사이의 트래픽을 스위칭하는 SDN 기반의 스위치; 및
상기 이동 단말과 상기 SDN 스위치의 통신을 중계하는 상기 제1 무선 엑세스 장치에서 상기 제2 무선 엑세스 장치로 변경되도록 하는 망 변경 메시지를 상기 SDN 스위치로 송신하는 SDN 기반의 제어기를 포함하는 트래픽의 이종 망 경로 변경이 가능한 네트워크 시스템.A mobile terminal equipped with an SDN (Software Defined Network) agent and having first and second communication modules of different types of first and second wireless network interfaces;
An SDN-based first and second wireless access devices that wirelessly communicate with the first and second communication modules, respectively;
An SDN based switch for performing wired or wireless communication with the first and second wireless access devices and switching traffic between the mobile terminal and the external network through the first and second wireless access devices; And
And an SDN-based controller for transmitting a network change message for changing from the first wireless access device to the second wireless access device to relay the communication between the mobile terminal and the SDN switch to the SDN switch. A network system capable of changing routes.
상기 SDN 제어기는 네트워크 상태, QoS 정책, 상기 이동 단말의 사용자에 의한 설정 요청, 및 상기 SDN 제어기 관리자에 의한 설정 지시 중 적어도 하나에 의해 망 변경 결정을 하는 경우, 상기 망 변경 메시지를 생성하는, 네트워크 시스템.The method according to claim 1,
Wherein the SDN controller generates the network change message when making a network change decision by at least one of a network status, a QoS policy, a setup request by a user of the mobile terminal, and a setup instruction by the SDN controller administrator, system.
상기 이동 단말은, 상기 제1 무선 엑세스 장치를 통해 상기 망 변경 메시지를 수신한 경우, 상기 제2 통신 모듈을 활성화하여 상기 제2 무선 엑세스 장치와 통신하는, 네트워크 시스템.The method according to claim 1,
Wherein the mobile terminal activates the second communication module and communicates with the second wireless access device when the network change message is received through the first wireless access device.
상기 이동 단말은, 상기 제2 무선 엑세스 장치로 상기 제2 통신 모듈의 IP 주소 요청 메시지를 전송하는, 네트워크 시스템.The method of claim 3,
Wherein the mobile terminal transmits an IP address request message of the second communication module to the second wireless access device.
상기 IP 주소 요청 메시지는 상기 제1 통신 모듈로 통신 중이었음을 알리는 망 변경 알림을 포함하는, 네트워크 시스템.5. The method of claim 4,
Wherein the IP address request message includes a network change notification informing that the first communication module is in communication.
상기 SDN 스위치는 상기 제2 무선 엑세스 장치를 통해 수신한 상기 이동 단말의 상기 IP 주소 요청 메시지에 망 변경 알림이 포함되어 있는 경우, 상기 IP 주소 요청 메시지를 상기 SDN 제어기로 전송하고,
상기 IP 주소 요청 메시지는 상기 제2 통신 모듈의 식별 정보를 포함하는, 네트워크 시스템.6. The method of claim 5,
The SDN switch transmits the IP address request message to the SDN controller when the network change notification is included in the IP address request message of the mobile terminal received through the second radio access device,
Wherein the IP address request message includes identification information of the second communication module.
상기 SDN 제어기는 상기 이동 단말의 상기 제2 통신 모듈의 식별 정보가 없는 경우, 상기 망 변경 메시지를 송신하기 전에 상기 SDN 스위치를 통해 상기 제1 통신 모듈의 IP 주소 및 상기 제2 통신 모듈의 식별 정보를 포함하는 이동 단말 네트워크 정보를 취득하는, 네트워크 시스템.The method according to claim 1,
Wherein the SDN controller transmits the IP address of the first communication module and the identification information of the second communication module through the SDN switch before transmitting the network change message if there is no identification information of the second communication module of the mobile terminal And acquires mobile terminal network information including the mobile terminal network information.
상기 SDN 제어기는 상기 망 변경 메시지를 송신한 후, 상기 이동 단말의 제2 통신 모듈의 식별 정보를 포함하는 상기 제2 통신 모듈에 대한 IP 주소 요청 메시지를 수신하면, 상기 이동 단말 네트워크 정보로부터 상기 제1 통신 모듈의 IP 주소와 동일한 IP 주소를 포함하는 제2 통신 모듈 네트워크 설정 정보를 생성하는, 네트워크 시스템.8. The method of claim 7,
The SDN controller, after transmitting the network change message, receives the IP address request message for the second communication module including the identification information of the second communication module of the mobile terminal, 1 < / RTI > communication module, the second communication module network configuration information including the same IP address as the IP address of the communication module.
상기 제2 통신 모듈 네트워크 설정 정보는 상기 제2 무선 엑세스 장치를 통해 상기 이동 단말의 제2 통신 모듈로 전송되는, 네트워크 시스템.9. The method of claim 8,
And the second communication module network configuration information is transmitted to the second communication module of the mobile terminal through the second wireless access device.
상기 이동 단말 네트워크 정보 및 상기 제2 통신 모듈 네트워크 설정 정보는 각각 동일한 디폴트 게이트웨이 정보, 서브넷 마스크, DNS(Domain Name Server) 정보 중 적어도 하나를 포함하는, 네트워크 시스템.9. The method of claim 8,
Wherein the mobile terminal network information and the second communication module network configuration information each include at least one of the same default gateway information, a subnet mask, and DNS (Domain Name Server) information.
상기 제1 및 제2 무선 네트워크 중 어느 하나는 이동 통신이고 나머지 하나는 WiFi 네트워크인, 네트워크 시스템.The method according to claim 1,
Wherein one of the first and second wireless networks is a mobile communication and the other is a WiFi network.
상기 제2 무선 네트워크는 WiFi이고,
상기 망 변경 메시지는 상기 제2 무선 엑세스 장치 접속에 필요한 SSID 정보를 포함하는, 네트워크 시스템.The method according to claim 1,
The second wireless network is WiFi,
Wherein the network change message includes SSID information required for connection to the second wireless access device.
상기 망 변경 메시지는 상기 제2 무선 엑세스 장치와의 암호화된 통신에 필요한 무선 암호키를 더 포함한, 네트워크 시스템.13. The method of claim 12,
Wherein the network change message further comprises a wireless encryption key required for encrypted communication with the second wireless access device.
상기 망 변경 메시지는 상기 제2 무선 엑세스 장치와 동일한 종류의 복수의 무선 엑세스 장치 중 상기 제어기에 의해 특정된 상기 제2 무선 엑세스 장치로 상기 이동 단말이 접속하도록 하는 명령을 포함하는, 네트워크 시스템.The method according to claim 1,
Wherein the network change message includes a command to cause the mobile terminal to access the second wireless access device specified by the controller among a plurality of wireless access devices of the same type as the second wireless access device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140166821A KR20160063161A (en) | 2014-11-26 | 2014-11-26 | Network system capable changing traffic path between heterogeneous networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140166821A KR20160063161A (en) | 2014-11-26 | 2014-11-26 | Network system capable changing traffic path between heterogeneous networks |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20160063161A true KR20160063161A (en) | 2016-06-03 |
Family
ID=56192396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140166821A Ceased KR20160063161A (en) | 2014-11-26 | 2014-11-26 | Network system capable changing traffic path between heterogeneous networks |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20160063161A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110650455A (en) * | 2019-09-12 | 2020-01-03 | 华侨大学 | A method for switching access point of Internet of Vehicles based on software-defined network |
-
2014
- 2014-11-26 KR KR1020140166821A patent/KR20160063161A/en not_active Ceased
Non-Patent Citations (4)
Title |
---|
[http://www.etsi.org/deliver/etsi_gs/NFV/001_099/002/01.01.01_60/gs_NFV002v010101p.pdf] |
1. OpenFlow Switch Specification version 1.4.0(Wire Protocol 0x05), October 14, 2013 [https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.4.0.pdf] |
2. Software-Defined Networking: The New Norm for Netwrks, ONF White Paper, April 13, 2012 [https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-newnorm.pdf] |
3. ETSI GS NFV 002 v1.1.1 (2013-10) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110650455A (en) * | 2019-09-12 | 2020-01-03 | 华侨大学 | A method for switching access point of Internet of Vehicles based on software-defined network |
CN110650455B (en) * | 2019-09-12 | 2022-04-05 | 华侨大学 | A method for switching access point of Internet of Vehicles based on software-defined network |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9497661B2 (en) | Implementing EPC in a cloud computer with openflow data plane | |
CA2847103C (en) | Implementing a 3g packet core in a cloud computer with openflow data and control planes | |
EP3140964B1 (en) | Implementing a 3g packet core in a cloud computer with openflow data and control planes | |
WO2013144747A1 (en) | Implementing epc in a cloud computer with openflow data plane | |
CN108886697A (en) | Service delivery to handed-off user equipment (UE) using a software-defined networking (SDN) controller | |
WO2014119715A1 (en) | Communication terminal, communication method, program, communication system, and information processing apparatus | |
EP4175255B1 (en) | Gateway device, system and method for providing a forwarding policy | |
EP3447977B1 (en) | Packet processing method and apparatus | |
KR101527377B1 (en) | Service chaining system based on software defined networks | |
KR101746105B1 (en) | Openflow switch capable of service chaining | |
KR101767472B1 (en) | Method for changing data path by sdn-based controller | |
KR101679224B1 (en) | Network system based on sdn capable traffice distribution | |
US20240276342A1 (en) | System and Method for Establishing a Dual-Layer PDU Session | |
KR20160063161A (en) | Network system capable changing traffic path between heterogeneous networks | |
KR20160063164A (en) | Method for changing network interface by sdn-based mobile terminal | |
KR101739097B1 (en) | Service chaining method in openflow switch | |
KR101739100B1 (en) | Method of controlling openflow switch capable of service chaining and controller thereof | |
US20240291760A1 (en) | Global visibility for virtual private network (vpn) conditions for routing optimizations | |
JP6932118B2 (en) | Packet processing method and equipment | |
CN118101475A (en) | Gateway apparatus, system and method for providing forwarding policy | |
da Silva | Mecanismos de offloading para redes móveis usando SDN em ambientes virtualizados |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20141126 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20160609 Patent event code: PE09021S01D |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20161128 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20160609 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |