상기한 목적을 달성하기 위해 본 발명에 따른 IP기반 음성/영상전화 전용망에서의 세션제어방법은, 다수의 단말과 라우터로 구성된 IP 기반 음성/영상전화 전용망에서의 세션제어방법에 있어서, 발신단말로부터 세션개시가 요청되면, 발신단말과 착신단말에 대한 인증을 수행하는 제 1 과정; 네크워크 상태정보를 이용하여, 세션의 수락여부를 결정하는 제 2 과정; 만약 상기 세션이 수락되면, 상기 네 트워크 상태정보를 갱신함과 동시에 세션을 연결하고, 만약 상기 세션이 거절되면, 상기 발신단말로 세션연결불가를 통보하는 제 3 과정; 및 상기 발신단말과 상기 착신단말 중 어느 한 단말로부터 세션종료가 요청되면, 상기 네트워크 상태정보를 갱신한 후 상기 세션을 해제하는 제 4 과정을 구비함을 특징으로 한다.
또한, 상기한 목적을 달성하기 위해 본 발명에 따른 IP기반 음성/영상전화 전용망에서의 세션제어장치는, 발신단말로부터 세션개시요청메시지가 전송되면, 상기 발신단말과 착신단말을 인증하는 인증모듈; 자료입력부를 통해 입력되는 네트워크 토폴로지 정보를 근거로 네크워크 정보를 생성하는 네트워크정보생성모듈; 상기 네트워크 상태정보를 저장하는 데이터베이스; 상기 네트워크 정보를 이용하여, 상기 인증모듈을 통해 인증성공된 상기 발신단말과 상기 착신단말간의 세션 수락여부를 결정하는 수락제어모듈; 상기 수락제어모듈에 의한 세션수락결과에 따라 상기 발신단말과 상기 착신단말간의 세션을 제어하는 세션제어모듈; 및 상기 세션제어모듈의 제어하에 상기 데이터베이스의 네트워트정보를 관리하는 네트워크정보 갱신 모듈을 구비함을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 보다 상세히 설명한다.
도 2는 본 발명의 실시예에 따른 IP기반 음성/영상전화 전용망에서 서비스품질을 보장하는 세션제어장치가 적용되는 네트워크의 구성도이다.
도 2에서 참조부호 10은 세션에 대한 전체적인 호 제어 기능을 수행하는 세션개시서버이고, 참조부호 11 내지 22는 IP 단말이며, 참조부호 31 내지 34는 가입자 수용 라우터이고, 참조부호 41 내지 42는 에지라우터이며, 51 내지 54는 백 본 라우터이다.
또, 참조부호 61 내지 72는 가입자 수용라우터(31, 32, 33, 34)가 수용하고 있는 가입자 IP 서브넷이고, 참조부호 81 내지 88은 에지라우터(41, 42)의 네트워크 인터페이스이며, 참조부호 91 내지 94는 백본라우터(51, 52, 53, 54)간 네트워크 인터페이스이고, 참조부호 90은 백본 네트워크이다.
도 2에 도시된 세션개시서버(10)의 세부 구성은, 도 3과 같이 구성된다.
세션개시서버(10)는 인증모듈(100), 세션제어모듈(102), 수락제어모듈(104), 네트워크정보갱신모듈(106), 네트워크정보 DB(108), 네트워크정보 생성모듈(110), 및 자료입력부(112)를 구비한다.
인증모듈(100)은 세션개시를 요청한 단말이 등록된 단말인가를 확인하기 위한 인증기능을 수행하고, 세션제어모듈(102)은 세션개시를 위해 시그널링을 중개하거나 호제어기능을 수행한다.
수락제어모듈(104)은 세션요청정보와 네트워크 상태정보에 기반하여 세션의 수락여부를 사전에 결정하는 기능을 수행하고, 네트워크정보 갱신모듈(106)은 세션의 연결수락 또는 세션종료후 네트워크 정보DB에 저장된 네트워크 상태정보를 갱신기록(update)하는 기능을 수행하며, 네트워크정보 생성모듈(110)은 네트워크 토폴로지 정보와 IP 서브넷간 라우팅 경로정보를 생성하는 기능을 수행한다.
네트워크정보 DB(108)는 네크워크 토폴로지 정보와 IP 서브넷간 라우팅 경로정보를 저장하는 데이터베이스이고, 자료입력부(112)는 네트워크 토폴로지 정보 입력 인터페이스를 제공하는 기능을 수행한다.
이어, 도 4에 도시된 플로우차트와, 도 2 내지 도 3에 제시된 블럭 구성도를 참조하여, 본 발명의 실시예에 따른 IP기반 음성/영상전화 전용망에서의 세션제어방법을 구체적으로 설명한다.
먼저, 임의의 발신단말이 임의의 착신단말을 목적지로 하는 세션을 시작하기 위해 세션개시서버(10)로 세션개시요청메시지가 전송되면(S2), 세션개시서버(10)는 인증모듈(100)을 통해 상기 발신단말과 상기 착신단말이 등록된 단말인가에 대한 인증을 수행한다(S4).
상기 발신단말과 상기 착신단말이 이미 등록되어 있어, 인증모듈(100)에 의한 인증이 성공하면(S4에서 "성공"), 인증모듈(100)은 세션제어모듈(102)로 인증성공을 통보하고, 세션제어모듈(102)은 수락제어모듈(104)로 수락제어를 요청한다.
그러나 이와 달리, 상기 발신단말과 상기 착신단말이 등록되어 있지 않아, 인증모듈(100)에 의한 인증이 실패하면(S4에서 "실패"), 인증모듈(100)은 세션제어모듈(102)로 인증실패를 통보하고, 세션제어모듈(102)은 상기 발신단말로 인증실패를 통보하는 응답메시지를 전송한다.
한편, 상기 발신단말이 세션개시요청메시지를 송신할 때, 세션개시요청 메시지에는 SDP(Session Description Protocol)을 사용하여 코덱(CODEC)정보나 비트전송율(bit rate) 정보 등을 포함하여 전달하고, 세션개시요청단계와 인증까지의 절차(S2, S4)는 일반적인 세션 개시 절차와 동일하게 수행된다.
수락제어를 요청받은 수락제어모듈(104)은 네트워크 정보 DB(108)에 네트워크 토폴로지 정보와 라우팅 경로 테이블 정보가 모두 존재하면(S8에서 "있음"), 수락결정을 판단하고(S12), 네트워크 정보 DB(108)에 네트워크 토폴로지 정보 또는 라우팅 경로 테이블 정보가 존재하지 않으면(S8에서 "없음"), 네트워크 정보 생성모듈(110)을 통해 네트워크 상태정보 즉, 네트워크 토폴로지 정보와 라우팅 정보를 생성한다(S10).
보다 구체적으로, 네트워크 정보 DB(108)에 네트워크 토폴로지가 존재하지 않을 경우, 자료입력부(112)를 통해 3계위의 네트워크 정보를 입력받는다.
3계위는 각각 백본 네트워크 정보, 에지네트워크 정보, 및 가입자 네트워크 정보로 구분되며, 각각의 네트워크 정보 입력시 라우터 정보(노드 정보)와 상기 라우터에 수용되는 모든 네트워크 인터페이스의 IP 서비넷 정보 및 링크용량 정보(링크 정보)를 포함한다.
실시예를 위한 각 단계의 네트워크 정보 입력 파라미터는 [표 1] 내지 [표 3]과 같다.
[표 1] 백본 네트워크 입력 정보
서울백본1(51) |
수용링크 IP서브넷 |
147.6.83.0(83) |
147.6.91.0(91) |
147.6.92.0(92) |
링크용량(Gbps) |
1 |
2.5 |
2.5 |
서울백본2(52) |
수용링크 IP서브넷 |
147.6.84.0(84) |
147.6.93.0(93) |
147.6.94.0(94) |
링크용량(Gbps) |
1 |
2.5 |
2.5 |
대전백본1(53) |
수용링크 IP서브넷 |
147.6.85.0(85) |
147.6.91.0(91) |
147.6.93.0(93) |
링크용량(Gbps) |
1 |
2.5 |
2.5 |
대전백본2(54) |
수용링크 IP서브넷 |
147.6.86.0(86) |
147.6.92.0(92) |
147.6.94.0(94) |
링크용량(Gbps) |
1 |
2.5 |
2.5 |
[표 1]에서 괄호( ) 안의 참조부호는 도 2의 도면 부호이다.
[표 2] 에지 네트워크 입력 정보
서울에지1(41) |
대전에지1(42) |
수용링크 IP서브넷 |
링크용량(Gbps) |
수용링크 IP서브넷 |
링크용량(Gbps) |
147.6.81.0(81) |
1 |
147.6.85.0(85) |
1 |
147.6.82.0(82) |
1 |
147.6.86.0(86) |
1 |
147.6.83.0(83) |
1 |
147.6.87.0(87) |
1 |
147.6.84.0(84) |
1 |
147.6.88.0(88) |
1 |
[표 3] 가입자 네트워크 입력 정보
가입자1(31) |
수용링크 IP서브넷 |
147.6.61.0(61) |
147.6.62.0(62) |
147.6.63.0(63) |
147.6.81.0(81) |
링크용량 (Gbps) |
0.1 |
0.1 |
0.1 |
1 |
가입자2(32) |
수용링크 IP서브넷 |
147.6.64.0(64) |
147.6.65.0(65) |
147.6.66.0(66) |
147.6.82.0(82) |
링크용량 (Gbps) |
0.1 |
0.1 |
0.1 |
1 |
가입자3(33) |
수용링크 IP서브넷 |
147.6.67.0(67) |
147.6.68.0(68) |
147.6.69.0(69) |
147.6.87.0(87) |
링크용량 (Gbps) |
0.1 |
0.1 |
0.1 |
1 |
가입자4(34) |
수용링크 IP서브넷 |
147.6.70.0(70) |
147.6.71.0(71) |
147.6.72.0(72) |
147.6.88.0(88) |
링크용량 (Gbps) |
0.1 |
0.1 |
0.1 |
1 |
네트워크정보 생성 모듈(110)은 네트워크 토폴로지 정보가 모두 입력되면, 입력된 정보를 바탕으로 라우팅 정보 테이블을 생성한다.
IP 기반 음성전용망은 하나의 관리시스템(autonomous system)에 속하므로, OSPF(Open Shortest Path First) 프로토콜과 같은 단일 내부 라우팅 프로토콜(Interior Gateway Protocol)이 동작한다. 따라서, 각 목적지에 대한 라우팅 정보는 최단거리경로(shortest path)를 구하면 얻을 수 있다.
본 발명에서 네트워크 토폴로지 정보는 백본 네트워크, 에지 네트워크, 및 가입자 네트워크 입력정보의 3단계 계위를 가지고 구분된다. 그리고, 동일한 가입자 네트워크 라우터에 수용된 다른 IP서브넷 가입자 간에는 상기한 가입자 네트워크 라우터를 통해 로컬라우팅되고, 동일한 에지네트워크 라우터에 수용된 서로 다른 가입자 네트워크 라우터 수용 가입자간 트래픽은 반드시 상기한 가입자 네트워크 라우터를 수용하는 에지 네트워크 라우터를 통해 전달되고, 서로 다른 에지 네트워크 라우터에 수용된 가입자간 트래픽은 반드시 상기한 에지 네트워크를 수용하는 백본 네트워크를 통해 전달되며, 백본 네트워크 내의 지역간 백본 라우터간에는 완전망형(full-mesh)으로 연결되므로, 백본에서는 지역간 백본 라우터 간의 직접 링크를 통해 전달된다. 따라서, 상기한 계위정보를 포함하는 토폴로지 정보에 기반하여 가입자 네트워크 간의 모든 경로에 대해 최단거리 라우팅 경로를 쉽게 구할 수 있다. 이 때 최단거리 경로가 복수개일 경우 이를 모두 구한다.
본 발명의 실시예에 따른 가입자 IP 서브넷 간의 최단거리 경로 테이블은 [표 4]와 [표 5]에 제시된 바와 같다.
[표 4] 가입자 서브넷 간의 최단거리 경로 테이블
[표 4]에서 "-"는 가입자 수용 라우터에 수용된 서브넷간을 나타낸다.
[표 5] 가입자 서브넷 간의 최단거리 경로 테이블
S10을 통해 네크워크정보 생성 모듈(110)에서 네크워크 토폴로지 정보와 라우팅 정보 테이블이 모두 생성되면, 수락제어모듈(104)은 상기한 네트워크 상태정보와 세션개시 요청시 전달받은 정보를 이용하여 수락여부를 결정한다(S12).
수락제어모듈(104)은 수락여부의 결정을 위해, 세션개시 요청시 제공되는 발신 IP 주소, 서브넷마스크(subnet mask) 정보와 착신 IP 주소, 서브넷마스크 정보 로부터 발신 IP 서브넷과 착신 IP 서브넷을 구할 수 있으며, 이를 통해 상기한 발신 IP 서브넷과 착신 IP 서브넷간의 연결 경로를 네트워크 정보 DB(108)의 라우팅 경로 테이블(108)로부터 취득한다.
실시예를 위해 발신단말(11)의 IP주소가 147.6.61.11, 서브넷 마스크가 255.255.255.0, 착신단말(22)의 IP주소를 147.6.72.22, 서브넷 마스크가 255.255.255.0일 경우, 상기한 주소정보로부터 발신 IP서브넷은 147.6.61.0, 착신 IP서브넷은 147.6.72.0임을 알 수 있으며, 라우팅 정보로부터 상기한 IP서브넷간의 연결경로는 4개의 경로가 존재함을 알 수 있다.
1: 147.6.81.0(81)→147.6.83.0(83)→147.6.91.0(91)→147.6.85.0(85)→147.6.88.0(88)
2: 147.6.81.0(81)→147.6.83.0(83)→147.6.92.0(92)→147.6.86.0(86)→147.6.88.0(88)
3: 147.6.81.0(81)→147.6.84.0(84)→147.6.93.0(93)→147.6.85.0(85)→147.6.88.0(88)
4: 147.6.81.0(81)→147.6.84.0(84)→147.6.94.0(94)→147.6.86.0(86)→147.6.88.0(88)
일반적인 IP네트워크에서 동일한 최단거리 경로(equal cost path)를 목적지로 하는 패킷에 대해서는 부하가 분산되어(load balancing) 세션별 또는 패킷별로 라운드 로빈(round-robin) 방식에 의해 번갈아 가며 경로를 선택(routing)하게 되므로, 라우팅 경로 테이블상에 복수개의 링크가 존재할 경우에는 각각의 경로에 대 해서 수락제어를 수행하여, 모든 경로가 연결을 허용할 경우에 대해 연결을 수락한 것으로 한다.
실제로 경로에 대한 수락제어를 실시하기 위해서는, 각 경로를 구성하는 링크별로 상태정보를 관리해야 한다. 수락제어를 위해 관리해야 하는 상태정보로는 상기 링크의 링크용량, 안정적인 운용을 위해 일부의 여유용량을 제공하여 수락제어시 실제 허용할 링크용량을 나타내는 최대수용용량, 수락된 세션 수, 그리고 현재 수락된 세션의 비트전송율의 총합인 총 비트전송율이 있다.
본 발명의 실시예에서 수락제어를 위한 링크상태 정보는 [표 6]과 같다.
[표 6] 수락제어를 위한 링크상태 정보
실시예의 4가지 경로에 대해, 각 경로의 모든 링크에서 현재의 가용비트전송율이 수락제어를 요청한 현재 세션의 비트전송율 보다 크거나 같으면(가용비트전송율≥수락제어를 요청한 현재 세션의 비트전송율), 현재 세션의 연결을 수락할 것으로 결정하고, 네트워크정보 갱신 모듈(106)을 통해 네크워크 정보 DB(108)에 저장된 네트워크 상태 정보를 갱신한다(S14).
네트워크 상태 정보의 갱신을 위해, 세션에 대한 연결수락시 발신 IP서브넷과 착신 IP서브넷간의 라우팅 경로상에 존재하는 모든 링크에 대해 현재 세션수 정보를 1만큼 증가시키고, 현재 비트전송율 정보를 수락제어시 사용한 현재 비트전송율 정보에 수락제어를 요청한 상기 세션의 비트전송율을 더한 값으로 갱신하고, 최대수용용량에서 상기한 현재 비트전송율을 차감하여 가용비트전송율을 갱신한다. 이 때, 복수개의 라우팅 경로가 존재하면, 상술한 바와 같이 패킷이 부하분산되어 전달되므로, 현재 세션수 정보를 1/복수라우팅경로수 만큼 증가시키고, 현재 비트전송율 정보를 수락제어시 사용한 현재 비트전송율 정보에 수락제어를 요청한 상기 세션의 비트전송율/복수라우팅경로수를 더한 값으로 갱신한다.
또, 수락제어모듈(104)은 세션의 수락허용에 따른 결과를 세션제어 모듈(102)로 전송한다(S16).
한편, 수락제어모듈(104)에서 각 경로의 모든 링크에서 현재의 가용비트전송율이 수락제어를 요청한 현재 세션의 비트전송율보다 작으면(가용비트전송율<수락제어를 요청한 현재 세션의 비트전송율), 현재 세션의 연결을 거절할 것으로 결정하고, 세션제어모듈(104)로 세션의 수락거절에 따른 결과를 전송한다(S26).
수락거절을 통보받은 세션제어모듈(104)은 발신단말(11)로 네트워크 자원이 모두 이용중이여서 세션을 개시할 수 없다는 것을 나타내는 메시지를 전송하고(S28), 세션연결을 위한 과정을 종료한다.
세션수락을 통보받은 세션제어모듈(104)은 발신단말(11)과 착신단말(22)간의 세션을 연결한다(S18). 이때, 연결되는 세션은, 수락제어를 요청한 비트전송율이 모두 보장되기 때문에, 상기 세션을 통해서 서비스 품질을 보장할 수 있다.
이후, 발신단말(11) 또는 착신단말(22)의 요청에 의해 통화가 종료되어, 발신단말(11) 또는 착신단말(22)이 세션개시서버(10)로 세션종료 메시지가 전달되면(S20), 세션개시서버(10)의 세션제어모듈(102)은 SDP형식의 세션종료 메시지에 포함된 발신 단말의 IP 서브넷 정보, 착신 단말의 IP서브넷 정보, 및 비트전송율(bit rate) 정보를 네크워크 정보 갱신 모듈(106)로 전송한다.
이에, 네트워크정보 갱신 모듈(106)은 발신 단말의 IP서브넷과 착신 단말의 IP 서브넷 간의 라우팅 경로상에 존재하는 모든 링크에 대해 현재 세션수와 현재 비트전송율을 차감하여 갱신하고, 최대수용용량에서 상기한 현재비트전송율을 차감하여 가용비트전송율 정보를 갱신한다(S22).
이로서, 발신단말(11)과 착신단말(22)간의 세션이 종료된다(S24).