KR20100069565A - 통신 네트워크에서의 데이터 처리량의 최적화 - Google Patents

통신 네트워크에서의 데이터 처리량의 최적화 Download PDF

Info

Publication number
KR20100069565A
KR20100069565A KR1020090110339A KR20090110339A KR20100069565A KR 20100069565 A KR20100069565 A KR 20100069565A KR 1020090110339 A KR1020090110339 A KR 1020090110339A KR 20090110339 A KR20090110339 A KR 20090110339A KR 20100069565 A KR20100069565 A KR 20100069565A
Authority
KR
South Korea
Prior art keywords
data packet
transmission
messages
packet
data
Prior art date
Application number
KR1020090110339A
Other languages
English (en)
Other versions
KR101103964B1 (ko
Inventor
콘스탄틴 샤진
아렐 파츠
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
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 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20100069565A publication Critical patent/KR20100069565A/ko
Application granted granted Critical
Publication of KR101103964B1 publication Critical patent/KR101103964B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

통신 네트워크에서 데이터를 전송하는 방법이 제공된다. 방법은, 제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하고; 상기 제1 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제2 데이터 패킷에 하나 이상의 추가의 메시지를 추가하고; 상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하는 것을 포함한다.

Description

통신 네트워크에서의 데이터 처리량의 최적화{OPTIMIZING THROUGHPUT OF DATA IN A COMMUNICATIONS NETWORK}
저작권 & 상표권 통지
본 특허 문서의 개시 부분은 저작권 보호 대상인 자료를 포함한다. 소유자는 특허 및 상표청 특허 파일 또는 기록에서 보이는 대로 특허 문서 또는 특허 개시의 임의의 것에 의한 모사에 이의는 없지만 어떠한 것이든 모든 저작권을 보유한다.
여기에서 인용한 특정 표시는 출원인 또는 양수인과 관계가 있거나 관계 없는 제3자의 등록된 상표 또는 관습법일 수 있다. 이들 표시의 사용은 예로써 가능한 개시를 제공하기 위한 것이며, 이러한 표시와 관련된 자료에 본 발명의 범위를 한정하는 것으로 해석되어서는 안 된다.
본 발명은 일반적으로 통신 네트워크에서의 데이터 전송에 관한 것으로, 보다 상세하게는 서비스 품질(QoS; quality of service) 요건을 준수하면서 전송 처리량(throughput)을 최적화(optimizing)하는 것에 관한 것이다.
네트워크 환경에서의 메시징 시스템은 네트워크 환경에서 애플리케이션으로부터 하나 이상의 목적지(destination)로 메시지를 전달할 수 있다. 메시지들은 통 상적으로 데이터 패킷으로 함께 그룹화되며, 그 다음에 데이터 패킷은 목적지로 전송된다. 패킷으로 메시지들을 캡슐화(encapsulating)하는 것은 통신 오버헤드의 감소를 돕고 성공적인 메시지 전달의 평균 비율을 개선한다. 패킷의 최대 사이즈는 보통 최대 전송 유닛(MTU; Maximum Transfer Unit)으로 불리는 네트워크 설정에 의해 결정된다.
일반적으로 전송 처리량을 증가시키기 위해 패킷에 가능한 많은(예를 들어, MTU에 따라 결정되는 상한 내의) 메시지를 추가하는 것이 바람직하다. 그러나, 실시간 메시징 시스템은 QoS 요건을 준수하기 위하여 충분히 이용되지 않은(underutilized) 패킷(즉, 개별 메시지들로 최적으로(optimally) 채워지지 않은 패킷)을 전송할 수 있다.
QoS는 메시지에 우선순위 파라미터를 할당함으로써 네트워크 통신에서 특정 레벨의 성능을 달성하도록 메시지들을 우선순위화할 수 있는 능력을 애플리케이션에 제공한다. QoS를 준수하기 위해, 메시징 시스템은 일반적으로 가장 긴급한(urgent) 패킷을 제일 먼저 전송한다. 가장 긴급한 패킷은 다른 메시지들에 비해 가장 높은 우선순위를 갖는 메시지를 포함하는 패킷이다.
메시지에 QoS에 따라 우선순위가 할당되는 기존의 메시징 시스템에 있어서, 애플리케이션은 하나 이상의 목적지에의 전송을 위해 메시지들을 배칭(batching) 모듈에 제출한다. 배칭 모듈은 메시지들을 데이터 패킷으로 모으고(aggregate), 마무리(finalization)되면 스케쥴링 모듈에 패킷을 전송한다. 스케쥴링 모듈은 긴급성(urgency)에 기초하여 수신된 패킷들을 전송하며, 그리하여 가장 긴급한 메시지 를 포함하는 패킷이 제일 먼저 전송된다.
배칭 모듈은, 패킷이 미리 결정된 사이즈 임계치에 도달할 때 또는 패킷이 QoS에 따라 결정되는 특정 시간 제한을 넘을 때, 패킷을 마무리한다. 배칭 모듈이 패킷 사이즈에 기초하여 패킷을 마무리하는 경우, 사이즈 임계치를 충족하지 않는 상위 우선순위를 갖는 큐의 다른 패킷이 존재할 수 있기 때문에, 스케쥴링 모듈의 마무리된 패킷 전송은 QoS를 위반할 수 있다.
반면에, 배칭 모듈이 특정 시간 제한에 따라 패킷을 마무리하는 경우, 배칭 모듈은 충분히 이용되지 않은 패킷을 스케쥴링 모듈에 전송할 수 있다. 이 충분히 이용되지 않은 것(underutilization)은, 더 긴급한 다른 패킷들을 전송하며 바쁜 스케쥴링 모듈로 인해 마무리된 패킷의 전송이 지연될 수 있기 때문에 발생한다. 이 기다리는 기간 중에 마무리된 패킷에 추가될 수 있는 추가의 메시지가 도달하는 경우, 새로운 메시지는 마무리된 패킷에 추가될 수 없다. 즉, 패킷이 일단 마무리되고 스케쥴링 모듈에 전송되면, 배칭 모듈은 패킷이 전송을 기다리고 있는 동안 패킷에 추가의 메시지를 추가할 수 없다.
상기 언급한 단점들을 극복하기 위한 시스템 및 방법이 필요하다.
본 발명은 서비스 품질(QoS) 요건을 준수하면서 전송 처리량을 최적화할 수 있는 통신 네트워크에서의 데이터 전송 방법을 제공하고자 한다.
간략하게 하기 위하여, 특정 양상, 이점, 및 신규 특징이 여기에 기재되었다. 임의의 하나의 특정 실시예에 따라 이러한 이점들이 전부 달성되는 것은 아닐 수 있다는 것을 이해하여야 한다. 따라서, 청구한 대상은 여기에서 교시되거나 제안될 수 있는 바와 같이 모든 이점들을 달성하지 않고서도 하나의 이점 또는 이점 그룹을 달성하거나 최적화하는 방식으로 구현되거나 수행될 수 있다.
하나의 실시예에 따르면, 통신 네트워크에서 데이터를 전송하는 방법이 제공된다. 본 방법은, 제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하고; 상기 제1 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제2 데이터 패킷에 하나 이상의 추가의 메시지를 추가하고; 상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하는 것을 포함한다.
하나의 실시예에 따르면, 통신 네트워크에서 데이터를 전송하는 방법이 제공된다. 본 방법은, 제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하고; 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 상기 제1 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제1 데이터 패킷에 하나 이상의 추가의 메시지를 추가하는 것을 포함한다.
다른 실시예에 따르면, 하나 이상의 로직 유닛을 포함하는 시스템이 제공된다. 상기 하나 이상의 로직 유닛은 상기 개시된 방법과 연관된 기능 및 동작을 수행하도록 구성된다. 또 다른 실시예에 따르면, 컴퓨터 판독가능한 프로그램을 갖는 컴퓨터 사용가능한 매체를 포함하는 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 판독가능한 프로그램은 컴퓨터 상에서 실행될 때 상기 컴퓨터로 하여금 상기 개시된 방법과 연관된 기능 및 동작을 수행하도록 한다.
특정 대안에 더하여 상기 개시한 실시예들의 하나 이상의 실시예가 첨부 도면에 관련하여 아래에 보다 상세하게 제공된다. 그러나, 본 발명은 개시된 임의의 특정 실시예에 한정되지 않는다.
본 발명에 따르면, 서비스 품질(QoS) 요건을 준수하면서 전송 처리량을 최적화할 수 있는 통신 네트워크에서의 데이터 전송 방법을 제공할 수 있다.
아래에 제공되는 바와 같이 첨부 도면들의 도면을 참조함으로써 본 발명의 실시예가 이해된다.
하나 이상의 실시예에 따라, 상이한 도면에서 동일한 부호에 의해 참조되어 있는 본 발명의 특징, 요소 및 양상은 동일하거나 동등하거나 유사한 특징, 요소 또는 양상을 나타낸다.
다음에서, 다수의 특정 상세사항은 본 발명의 다양한 실시예의 완전한 설명을 제공하도록 서술된다. 본 발명의 어떤 실시예는 이들 특정 상세사항 없이 또는 상세사항에 있어서의 일부 변형과 함께 실시될 수 있다. 일부 경우에, 어떤 특징들은 본 발명의 다른 양상들을 모호하게 하지 않도록 덜 상세하게 기재된다. 요소 또는 특징들 각각과 관련된 상세 정도는 다른 것들에 걸쳐 하나의 특징의 중요성 또는 신규성을 제한하는 것으로 해석되어서는 안 된다.
도 1을 참조하여, 하나의 실시예에 따르면, 예시적인 통신 네트워크(100)는 데이터 패킷을 각각 전송하고 수신하는 송신 유닛(110) 및 하나 이상의 수신 유닛(120)을 포함한다. 송신 유닛(110) 및 수신 유닛(120)은 통신 네트워크(100)에서 하나 이상의 네트워크를 통해 접속되어 있는 하나 이상의 컴퓨팅 시스템을 포함할 수 있다.
송신 유닛(110)은 수신 유닛(120)에 패킷을 전송하기 위해 메시징 시스템(114)에 메시지를 제출(submit)할 수 있는 하나 이상의 애플리케이션(112)을 포함한다. 수신 유닛(120)은 각각, 메시징 시스템(114)으로부터 패킷을 수신하고 하나 이상의 애플리케이션(124)에 메시지를 전송하기 위한 메시징 시스템(122)을 포함할 수 있다.
메시징 시스템(114)은, 바람직하게는 통신 모듈(도시되지 않음)에 의해 하나 이상의 수신 유닛(120)에의 전송을 위해, 애플리케이션(112)에 의해 제출된 메시지들을 배칭(batch)하고, 개별 데이터 패킷으로 복수의 메시지들을 캡슐화하고, 패킷을 스케쥴링한다. 통신 모듈은 예를 들어 배칭, 캡슐화, 및 스케쥴링 동작을 수행한다. 통신 모듈은 메시징 시스템(114)에 제출된 각각의 메시지 및 메시징 시스템(114)에 의해 전송을 위해 생성된 각각의 패킷을 제어한다.
하나의 실시예에서, 배칭, 캡슐화, 및 스케쥴링은 통신 모듈에 의해 수행되며, 그리하여 메시지는 패킷이 전송을 위해 마무리될 때까지 패킷에 추가될 수 있다. 바람직하게, 패킷이 가장 긴급한 패킷으로서 지정될 때까지 패킷은 전송을 위해 마무리되지 않는다. 이 방식으로, 패킷이 전송을 기다리고 있는 동안에 각각의 패킷에 대한 완전(full) 캡슐화 용량(encapsulation capacity)을 이용하도록 추가의 메시지가 패킷에 추가될 수 있기 때문에, 대부분의 패킷에 대하여 최적의 배칭이 이루어진다. 즉, 패킷을 전송할 때가 될 때까지 패킷 마무리가 지연되며, 그리하여 패킷이 마무리된 후에는 패킷은 전송을 위해 다른 패킷 뒤의 큐에서 기다릴 필요가 없다.
도 2를 참조하여, 하나의 실시예에 따르면, 메시지를 배칭 및 캡슐화하고 데이터 패킷의 전송을 스케쥴링하기 위한 예시적인 통신 모듈(도시되지 않음)은 메시지(예를 들어, M1 내지 M13)의 패킷화 그리고 큐(202)에서의 전송을 위한 패킷(예를 들어, P1, P2, 및 P3)의 스케쥴링을 관리하도록 구현될 수 있다.
통신 모듈은 메시지들을 목적지에 따라 패킷으로 배칭하고 캡슐화한다. 패킷 에 추가될 수 있는 메시지들의 수는 메시지의 사이즈 및 패킷의 사이즈(즉, 패킷의 캡슐화 용량)에 따라 좌우된다. 도 2에 도시된 바와 같이, 제1 수신 유닛 세트에 대하여 지정되어 있는 메시지 M1 내지 M8은 2개의 상이한 패킷에 추가될 수 있다. 예를 들어, 메시지 M1 내지 M6은 패킷 P1에 추가되며, 메시지 M7 및 M8은 패킷 P2에 추가된다. 제2 수신 유닛 세트에 대하여 지정되어 있는 메시지 M9 내지 M13은 패킷 P3에 추가된다.
통신 모듈은 전송을 위해 가장 긴급한 패킷을 식별하고, 바람직하게 가장 긴급한 패킷이 큐(202)의 헤드(head)에 위치되도록 생성된 패킷들을 긴급성의 순서대로 정렬한다. 패킷의 긴급성은 패킷에 포함되어 있는 메시지의 우선순위에 의해 결정된다. 도 2에서, 예를 들어, 패킷 P1은 메시지 M1 내지 M13 중에서 가장 높은 우선순위를 갖는 메시지 M1을 포함하기 때문에 패킷 P1이 가장 긴급한 패킷이다. 대부분의 경우, 동일한 패킷에 포함된 메시지는 거의 동일한 우선순위를 갖는다는 것을 유의하자.
도 1 내지 도 3a를 참조하여, 하나의 실시예에 따르면, 애플리케이션(112)은 수신 유닛(120)에의 전송을 위해 메시징 시스템(114)에 복수의 메시지를 제출한다. 메시징 시스템(114)이 메시지를 수신하면(P300), 통신 모듈은 메시지들을 데이터 패킷으로 캡슐화하고(P310), 가장 높은 우선순위를 갖는 메시지의 위치를 찾음으로써 가장 긴급한 패킷을 식별한다(P320). 통신 모듈은 임의의 다른 패킷 전에 가장 긴급한 패킷을 전송하며, 가장 긴급한 메시지가 전송되기를 기다리는 동안에, 더 많은 메시지들을 모을 수 있는 기회를, 충분히 이용되지 않은 다른 대기 중 인(pending) 패킷들에 제공한다(P330).
하나의 실시예에서, 충분히 이용되지 않은 패킷이 가장 긴급한 패킷으로서 지정되는 경우, 통신 모듈은 최적의 배칭이 이루어지지 않는다 해도 그 충분히 이용되지 않은 패킷을 전송할 수 있다. 대안의 실시예에서, 가장 긴급한 패킷을 전송하는 것에 통신 모듈을 한정하는 대신에, 통신 모듈이 K개의 가장 긴급한 패킷들 중에서 가장 최적화된(즉, 메시지들이 가장 꽉 채워져 있는) 패킷을 전송할 수 있는 옵션을 갖도록, 애플리케이션(112)은 값 K를 정의하는 추가의 QoS 파라미터를 할당할 수 있다.
즉, 하나의 실시예에서, 통신 모듈은 가장 긴급한 패킷 전에 가장 긴급한 패킷보다 더 최적화되어 있는 패킷을 전송하도록 구성되며, 더 많은 메시지들을 모을 수 있는 기회를 가장 긴급한 패킷에 제공할 수 있다. 예를 들어, 하나의 실시예에 따라, 통신 모듈은 K개의 가장 긴급한 패킷들 중에서 가장 최적화된 패킷을 전송하며, 패킷들 간에 최적화에서의 제약(tie)이 있는 경우 더 긴급한 패킷을 전송할 수 있다.
K의 값은 QoS 요건과 관련된 유연성(flexibility)을 제어하도록 조정될 수 있다. 예를 들어, K의 값은 전송된 패킷의 용량 또는 평균 사이즈(즉, 데이터의 처리량)를 증가시킴으로써 전체 패킷 전송의 수를 감소시키도록 증분될 수 있다.
예를 들어, K의 값은 3이고, P1이 가장 긴급한 패킷이며 P5가 가장 덜 긴급한 패킷이 되도록 5개의 패킷 P1, P2, P3, P4, 및 P5가 있다고 가정하자. 또한, 이 예에서, 우선순위는 QoS 요건에 따라 결정되는 전달 기한(deadline)에 대응하고, P1은 시간 00:30의 전달 기한을 가지며 가장 덜 최적화된 패킷이라고 가정하자.
K의 값은 3이므로, P1, P2, 및 P3이 K개의 가장 긴급한 패킷이다. 따라서, 하나의 실시예에 따르면, 통신 모듈은 P1 전에 P2 및 P3을 전송한다. 패킷이 15초마다 전송될 수 있다고 가정하면, P3이 시간 00:00에 전송되고 P2가 시간 00:15에 전송되는 경우, P1은 시간 00:30에 전송된다. 이 시나리오에서, P1은 전송 스케쥴에 따라 전송되기를 기다리는 동안에(즉, 어떠한 지연도 없이) 더 최적화될 수 있는(즉, P1의 캡슐화 용량을 보다 충분히 이용함) 30초를 갖는다.
그러나, K의 값이 4로 증가되는 경우에, P1은 이 예에서 더 최적화될 수 있는 추가의 15초를 가질 것이다. 따라서, P1보다 더 충분히 최적화되어 있는 3개의 다른 패킷들이 있는 경우, P1은 그의 전달 기한을 15초 지난 시간 00:45에 전송될 것이다. 따라서, 값 K가 너무 커진다면, 패킷이 QoS 시간 임계를 지나서 전송될 가능성이 더 커진다.
상기 언급한 문제를 피하기 위해, 패킷 최적화의 고려는 특정 경우에 한정될 수 있다. 예를 들어, 하나의 실시예에 따르면, 통신 모듈은 가장 긴급한 패킷 대신에 K개의 가장 긴급한 패킷들 중에서 더 최적화된 패킷을 전송하는 것이 가장 긴급한 패킷이 QoS 시간 임계 내에 전송되는 것을 막지 않는 경우에 지연된 전송을 제한할 수 있다.
도 3b는 하나의 실시예에 따라 QoS 완화(relaxation)를 이용하는 데이터의 전송을 도시한다. 도 1 및 도 3b를 참조하여, 애플리케이션(112)은 수신 유닛(120)에의 전송을 위해 메시징 시스템(114)에 복수의 메시지를 제출할 수 있다. 메시징 시스템(114)이 메시지를 수신하면(P350), 통신 모듈은 메시지들을 데이터 패킷으로 캡슐화하고(P355), 가장 높은 우선순위를 갖는 메시지의 위치를 찾음으로써 가장 긴급한 패킷을 식별한다(P360).
K개의 가장 긴급한 패킷들 중에서 더 최적화된 패킷이 있고(P365), 가장 긴급한 패킷 전에 더 최적화된 패킷을 전송해도 가장 긴급한 패킷이 QoS 시간 임계 내에 전송될 수 없는 것이 아닌 경우(P370), 통신 모듈은 더 최적화된 패킷을 전송하며, 더 많은 메시지들을 모을 수 있는 기회를 가장 긴급한 패킷에 제공한다(P375). 그렇지 않은 경우에는, 통신 모듈은 임의의 다른 패킷 전에 가장 긴급한 패킷을 전송하며, 더 많은 메시지들을 모을 수 있는 기회를 충분히 이용되지 않은 다른 대기 중인 패킷들에 제공한다(P380).
다양한 실시예들은 완전히 하드웨어 형태로 또는 완전히 소프트웨어 형태로, 아니면 하드웨어 및 소프트웨어 요소 둘 다의 조합으로 구현될 수 있다. 예를 들어, 통신 네트워크(100)에서의 송신 유닛(110) 및 수신 유닛(120)은 각각 본 발명의 시스템에 의해 예상되는 결과를 달성하는 프로세스를 수행하도록 실행되는 하드웨어 컴포넌트 및 소프트웨어 코드에 대하여 주로 제시될 수 있는 제어된 컴퓨팅 시스템 환경을 포함할 수 있다.
도 4 및 도 5를 참조하면, 예시적인 실시예에 따른 컴퓨팅 시스템 환경은 하드웨어 환경(400) 및 소프트웨어 환경(500)으로 구성된다. 하드웨어 환경(400)은 소프트웨어를 위한 실행 환경을 제공하는 기계 및 장비를 포함하고, 소프트웨어는 아래에 제공되는 대로 하드웨어를 위한 실행 명령어를 제공한다.
여기에 제공되는 바와 같이, 도시된 하드웨어 요소 상에서 실행되는 소프트웨어 요소는 특정 로직/기능 관계에 대하여 기재된다. 그러나, 소프트웨어로 구현된 각각의 방법이 예를 들어 구성 및 프로그래밍된 프로세서, ASIC(application specific integrated circuit), FPGA(Field Programmable Gate Array) 및 DSP(digital signal processor)에 의해 하드웨어로도 구현될 수 있다는 것을 유의하여야 한다.
소프트웨어 환경(500)은 시스템 소프트웨어(502) 및 애플리케이션 소프트웨어(504)를 포함하는 두 개의 주요 클래스로 구분된다. 시스템 소프트웨어(502)는 운영 체제(OS)와 같은 제어 프로그램, 및 정보를 어떻게 기능시키고 처리할지 하드웨어에 지시하는 정보 관리 시스템을 포함한다.
하나의 실시예에서, 상기 제공된 통신 모듈, 애플리케이션(112 및 124), 및 메시징 시스템(114 및 122)은 계층적(hierarchical) 볼륨 관리를 사용하여 데이터 무결성(data integrity) 확인을 용이하게 하도록 하나 이상의 하드웨어 환경에서 실행되는 시스템 소프트웨어(502) 또는 애플리케이션 소프트웨어(504)로서 구현될 수 있다. 애플리케이션 소프트웨어(504)는 프로그램 코드, 데이터 구조, 펌웨어, 상주 소프트웨어, 마이크로코드 또는 마이크로컨트롤러에 의해 판독되거나 분석되거나 또는 실행될 수 있는 임의의 기타 형태의 정보 또는 루틴을 포함할 수 있지만, 이에 한정되는 것은 아니다.
대안의 실시예에서, 본 발명은 컴퓨터 또는 임의의 명령어 실행 시스템에 의해 또는 이와 연결하여 사용하기 위한 프로그램 코드를 제공하는 컴퓨터 사용가능 또는 컴퓨터 판독가능한 매체로부터 액세스될 수 있는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 이 설명을 위해, 컴퓨터 사용가능 또는 컴퓨터 판독가능한 매체는 명령어 실행 시스템, 장치 또는 디바이스에 의해 또는 이와 연결하여 사용하기 위한 프로그램을 포함하거나 저장하거나 통신하거나 전파하거나 또는 전송할 수 있는 임의의 장치일 수 있다.
컴퓨터 판독가능한 매체는 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템(또는 장치 또는 디바이스) 또는 전파 매체일 수 있다. 컴퓨터 판독가능한 매체는 반도체 또는 고체 상태 메모리, 자기 테이프, 탈착가능한 컴퓨터 디스켓, RAM, ROM, 경성 자기 디스크 및 광학 디스크를 포함한다. 광학 디스크의 현재 예는 CD-ROM, CD-R/W 및 DVD를 포함한다.
도 4를 참조하면, 시스템 소프트웨어(502) 및 애플리케이션 소프트웨어(504)의 실시예는 시스템 버스(404)에 의해 하나 이상의 컴퓨터 판독가능한 매체 또는 메모리 요소에 연결되어 있는 프로세서(402)를 포함하는 하드웨어 환경(400)과 같은 데이터 처리 시스템 상에서 실행되는 컴퓨터 판독가능한 코드의 형태로 컴퓨터 소프트웨어로서 구현될 수 있다. 컴퓨터 판독가능한 매체 또는 메모리 요소는 예를 들어 로컬 메모리(406), 저장 매체(408), 및 캐시 메모리(410)를 포함할 수 있다. 프로세서(402)는 저장 매체(408)로부터 로컬 메모리(406)로 실행가능한 코드를 로딩한다. 캐시 메모리(410)는 실행을 위해 코드가 저장 매체(408)로부터 로딩되어야 할 횟수를 감소시키도록 임시 저장공간을 제공한다.
사용자 인터페이스 디바이스(412)(예를 들어, 키보드, 포인팅 디바이스 등) 및 디스플레이 스크린(414)은 예를 들어 직접 또는 중간 I/O 컨트롤러(416)를 통하여 컴퓨팅 시스템에 연결될 수 있다. 데이터 처리 시스템이 중간 사설 또는 공중 네트워크를 통하여 다른 데이터 처리 시스템 또는 원격 프린터나 저장 디바이스와 통신할 수 있도록 네트워크 어댑터와 같은 통신 인터페이스 유닛(418)이 또한 컴퓨팅 시스템에 연결될 수 있다. 유선 또는 무선 모뎀 및 이더넷 카드가 네트워크 어댑터의 몇몇의 예시적인 유형이다.
하나 이상의 실시예에서, 하드웨어 환경(400)은 상기 컴포넌트들을 전부 포함하지 않을 수 있고, 또는 추가적인 기능 또는 유틸리티를 위한 다른 컴포넌트를 포함할 수 있다. 예를 들어, 하드웨어 환경(400)은 랩톱 컴퓨터, 또는 셋톱 박스와 같이 내장형 시스템으로 구현되는 기타 휴대용 컴퓨팅 디바이스, PDA, 이동 통신 유닛(예를 들어, 무선 전화), 또는 정보 처리 및/또는 데이터 저장 및 통신 성능을 갖는 기타 유사한 하드웨어 플랫폼일 수 있다.
시스템의 특정 실시예에서, 통신 인터페이스(418)는 프로그램 코드를 포함하는 다양한 유형의 정보를 나타내는 디지털 데이터 스트림을 수송하는 전기, 전자기, 또는 광학 신호를 송수신함으로써 다른 시스템과 통신한다. 통신은 원격 네트워크에 의해(예를 들어, 인터넷) 또는 대안으로서 반송파를 통한 전송에 의해 확립될 수 있다.
도 5를 참조하여, 시스템 소프트웨어(502) 및 애플리케이션 소프트웨어(504)는 저장 매체(408)로부터 로컬 메모리(406)로 로딩된 후에 운영 체제 상에서 실행되는 하나 이상의 컴퓨터 프로그램을 포함할 수 있다. 클라이언트-서버 아키텍쳐에 있어서, 애플리케이션 소프트웨어(504)는 클라이언트 소프트웨어 및 서버 소프트웨어를 포함할 수 있다. 예를 들어, 본 발명의 하나의 실시예에서, 송신 유닛(110)이 서버이고 수신 유닛(120)이 클라이언트인 경우, 서버 소프트웨어(504)는 송신 유닛(110) 상에서 실행될 수 있고 클라이언트 소프트웨어는 수신 유닛(120) 상에서 실행될 수 있다.
소프트웨어 환경(500)은 또한 로컬 또는 원격 컴퓨팅 네트워크를 통해 이용 가능한 데이터에 액세스하기 위한 브라우저 소프트웨어(508)를 포함할 수 있다. 또한, 소프트웨어 환경(500)은 사용자 커맨드 및 데이터를 수신하기 위한 사용자 인터페이스(506)(예를 들어, 그래픽 사용자 인터페이스(GUI))를 포함할 수 있다. 상기 기재한 하드웨어 및 소프트웨어 아키텍쳐 및 환경은 예를 위한 것이며, 본 발명의 하나 이상의 실시예가 임의의 유형의 시스템 아키텍쳐 또는 처리 환경에 걸쳐 구현될 수 있다는 것을 유의하자.
또한 각각의 방법의 각각의 단계들이 수행되는 로직 코드, 프로그램, 프로세서, 방법 및 순서는 순전히 예시적인 것임을 이해하여야 한다. 각각의 모듈은 하드웨어 소프트웨어의 형태든 또는 그의 조합이든 단일 또는 복수의 개별 모듈로서 구현될 수 있다. 구현에 따라, 본 개시에서 달리 지시하지 않는 한, 단계들은 임의의 순서대로 또는 동시에 수행될 수 있다. 또한, 로직 코드는 임의의 특정 프로그래밍 언어에 관계되거나 한정되지 않고, 분산, 비분산 또는 멀티프로세싱 환경에서 하나 이상의 프로세서 상에서 실행하는 하나 이상의 모듈을 포함할 수 있다.
따라서, 본 발명은 첨부된 청구항의 사상 및 범위 내에서의 수정 및 변경과 함께 실시될 수 있음을 이해하여야 한다. 본 설명은 개시된 그 정확한 형태에 본 발명을 총망라하거나 제한하는 것으로 의도해서는 안 된다. 개시된 실시예의 이들 및 다양한 기타 적용 및 조합이 본 발명의 범위 내에 속하며, 청구항과 등가물의 그들 완전한 범위에 의해 더 정의된다.
도 1은 하나 이상의 실시예에 따른 예시적인 통신 네트워크의 블록도이다.
도 2는 하나의 실시예에 따라 전송을 위해 큐잉되어 있는 하나 이상의 패킷으로 그룹화된 메시지들의 예시적인 블록도를 도시한다.
도 3a 및 도 3b는 하나 이상의 실시예에 따라 통신 네트워크에서 데이터 패킷을 전송하기 위한 하나 이상의 예시적인 방법의 흐름도이다.
도 4 및 도 5는 하나 이상의 실시예에 따라 본 발명의 시스템이 동작할 수 있는 하드웨어 및 소프트웨어 환경의 블록도이다.

Claims (10)

  1. 통신 네트워크에서 데이터를 전송하는 방법에 있어서,
    제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함(encapsulate) - 을 식별하고;
    상기 제1 데이터 패킷이 전송을 위해 마무리(finalize)되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제2 데이터 패킷에 하나 이상의 추가의 메시지를 추가하고;
    상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하는 것을 포함하는 데이터 전송 방법.
  2. 청구항 1에 있어서,
    상기 제1 및 제2 전송 우선순위는 서비스 품질(QoS; Quality of Service) 요건에 따라 할당되는 것인 데이터 전송 방법.
  3. 청구항 1에 있어서,
    상기 제1 및 제2 데이터 패킷은 상기 제1 데이터 패킷이 큐(queue)의 헤드에 있도록 전송 큐에 저장되는 것인 데이터 전송 방법.
  4. 통신 네트워크에서 데이터를 전송하는 방법에 있어서,
    제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하고;
    제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 상기 제1 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제1 데이터 패킷에 하나 이상의 추가의 메시지를 추가하는 것을 포함하는 데이터 전송 방법.
  5. 청구항 4에 있어서,
    상기 제1 데이터 패킷 전에 상기 제2 데이터 패킷을 전송한다면 상기 제1 데이터 패킷이 시간 임계 내에 전송될 수 없는지 여부를 결정하는 것을 더 포함하는 데이터 전송 방법.
  6. 청구항 5에 있어서,
    상기 제1 데이터 패킷 전에 상기 제2 데이터 패킷을 전송한다면 상기 제1 데이터 패킷이 시간 임계 내에 전송될 수 없다고 결정하는 것에 응답하여, 상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하는 것을 더 포함하는 데이터 전송 방법.
  7. 청구항 5에 있어서,
    상기 제1 데이터 패킷 전에 상기 제2 데이터 패킷을 전송한다면 상기 제1 데이터 패킷이 시간 임계 내에 전송될 수 없는 것이 아니라고 결정하는 것에 응답하여, 상기 제1 데이터 패킷을 전송하기 전에 상기 제2 데이터 패킷을 전송하는 것을 더 포함하는 데이터 전송 방법.
  8. 시스템에 있어서,
    제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하는 로직 유닛;
    상기 제1 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제2 데이터 패킷에 하나 이상의 추가의 메시지를 추가하는 로직 유닛; 및
    상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하는 송신기를 포함하는 시스템.
  9. 청구항 8에 있어서,
    제3 전송 우선순위와 연관된 제3 데이터 패킷 - 상기 제3 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하는 논리 유닛; 및
    제4 전송 우선순위 - 상기 제4 전송 우선순위는 상기 제3 전송 우선순위보다 낮음 - 와 연관된 제4 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 상기 제3 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제3 데이터 패킷에 하나 이상의 추가의 메시지를 추가하는 논리 유닛을 포함하는 시스템.
  10. 로직 코드가 저장되어 있는 컴퓨터 판독가능한 매체를 포함하는 컴퓨터 프로그램 제품에 있어서, 상기 로직 코드는 컴퓨터 상에서 실행될 때 상기 컴퓨터로 하여금;
    제1 전송 우선순위와 연관된 제1 데이터 패킷 - 상기 제1 데이터 패킷은 목적지에의 전송을 위해 지정된 복수의 메시지들을 캡슐화함 - 을 식별하고;
    상기 제1 데이터 패킷이 전송을 위해 마무리되고 있는 동안에, 복수의 메시지들을 캡슐화하도록 제2 전송 우선순위 - 상기 제2 전송 우선순위는 상기 제1 전송 우선순위보다 낮음 - 와 연관된 제2 데이터 패킷의 용량을 보다 최적으로 이용하기 위해 상기 제2 데이터 패킷에 하나 이상의 추가의 메시지를 추가하고;
    상기 제2 데이터 패킷을 전송하기 전에 상기 제1 데이터 패킷을 전송하도록 하는 것인 컴퓨터 프로그램 제품.
KR1020090110339A 2008-12-15 2009-11-16 통신 네트워크에서의 데이터 처리량의 최적화 KR101103964B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/334,547 US8121129B2 (en) 2008-12-15 2008-12-15 Optimizing throughput of data in a communications network
US12/334,547 2008-12-15

Publications (2)

Publication Number Publication Date
KR20100069565A true KR20100069565A (ko) 2010-06-24
KR101103964B1 KR101103964B1 (ko) 2012-01-13

Family

ID=42240455

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090110339A KR101103964B1 (ko) 2008-12-15 2009-11-16 통신 네트워크에서의 데이터 처리량의 최적화

Country Status (2)

Country Link
US (1) US8121129B2 (ko)
KR (1) KR101103964B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9401855B2 (en) * 2008-10-31 2016-07-26 At&T Intellectual Property I, L.P. Methods and apparatus to deliver media content across foreign networks
US10499259B2 (en) 2012-08-30 2019-12-03 T-Mobile Usa, Inc. Special events module for self-organizing networks
US10506460B2 (en) 2012-08-30 2019-12-10 T-Mobile Usa, Inc. Self-organizing network mechanism for energy saving during an outage
US10506558B2 (en) 2012-08-30 2019-12-10 T-Mobile Usa, Inc. Performance-based optimization of QoS factors
US10142242B2 (en) * 2012-08-30 2018-11-27 T-Mobile Usa, Inc. Network support node traffic reduction for self-organizing networks
US10243794B2 (en) 2012-08-30 2019-03-26 T-Mobile Usa, Inc. Open architecture for self-organizing networks
US9973596B2 (en) * 2013-06-19 2018-05-15 Cisco Technology, Inc. Dynamically adjusting frame MTU to support low-latency communication
US11212372B2 (en) * 2019-12-31 2021-12-28 Ooma, Inc. Enhanced multi transport for redundancy

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455865A (en) 1989-05-09 1995-10-03 Digital Equipment Corporation Robust packet routing over a distributed network containing malicious failures
US5875329A (en) * 1995-12-22 1999-02-23 International Business Machines Corp. Intelligent batching of distributed messages
US5901202A (en) * 1996-10-11 1999-05-04 At&T Corp Method for initiating a telephone call on a remote line
US6862622B2 (en) 1998-07-10 2005-03-01 Van Drebbel Mariner Llc Transmission control protocol/internet protocol (TCP/IP) packet-centric wireless point to multi-point (PTMP) transmission system architecture
US6246702B1 (en) * 1998-08-19 2001-06-12 Path 1 Network Technologies, Inc. Methods and apparatus for providing quality-of-service guarantees in computer networks
EP1009138B8 (en) * 1998-11-30 2006-03-08 Matsushita Electric Industrial Co., Ltd. Data transmission method
US6745262B1 (en) * 2000-01-06 2004-06-01 International Business Machines Corporation Method, system, program, and data structure for queuing requests having different priorities
AU2002219745A1 (en) 2001-01-10 2002-07-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for coordinating end-to-end quality of service requirements for media flows in a multimedia session
US20030067874A1 (en) 2001-10-10 2003-04-10 See Michael B. Central policy based traffic management
EP2156906A1 (en) * 2002-06-03 2010-02-24 Mitsubishi Denki Kabushiki Kaisha Recovery method of electric appliance, electric appliance, information system of electric appliance and recovery apparatus of electric appliance
JP3792631B2 (ja) 2002-09-30 2006-07-05 Necインフロンティア株式会社 パケット伝送方法及び装置、それを用いた基地局装置、無線lan端末装置、無線lanシステム
US7319669B1 (en) * 2002-11-22 2008-01-15 Qlogic, Corporation Method and system for controlling packet flow in networks
US7515605B2 (en) * 2003-03-24 2009-04-07 Corrigent Systems Ltd Efficient transport of TDM services over packet networks
JP2004357005A (ja) 2003-05-29 2004-12-16 Japan Telecom Co Ltd 伝送優先順位が異なるデータの伝送方法及びその伝送処理装置並びにプログラム
US7676826B2 (en) * 2003-07-24 2010-03-09 Time Warner Interactive Video Group, Inc. Technique for communicating relatively high and low priority data between a terminal and a remote location
US7843959B2 (en) * 2004-01-30 2010-11-30 Telefonaktiebolaget Lm Ericsson Prioritising data elements of a data stream
DE602004030487D1 (de) * 2004-01-30 2011-01-20 Ericsson Telefon Ab L M Paketablaufsteuerung zur Datenstromübertragung
US7660327B2 (en) * 2004-02-03 2010-02-09 Atheros Communications, Inc. Temporary priority promotion for network communications in which access to a shared medium depends on a priority level
US8718067B2 (en) * 2004-11-24 2014-05-06 Lantiq Deutschland Gmbh Pre-emption mechanism for packet transport
JP4546541B2 (ja) * 2005-02-04 2010-09-15 ▲ホア▼▲ウェイ▼技術有限公司 情報伝送方法
US8054826B2 (en) * 2005-07-29 2011-11-08 Alcatel Lucent Controlling service quality of voice over Internet Protocol on a downlink channel in high-speed wireless data networks
US7461190B2 (en) * 2005-08-11 2008-12-02 P.A. Semi, Inc. Non-blocking address switch with shallow per agent queues
US8340256B2 (en) * 2006-03-03 2012-12-25 Motorola Solutions, Inc. Method for minimizing message collision in a device
JP4424623B2 (ja) * 2007-05-22 2010-03-03 京セラミタ株式会社 画像形成装置
US8160085B2 (en) * 2007-12-21 2012-04-17 Juniper Networks, Inc. System and method for dynamically allocating buffers based on priority levels

Also Published As

Publication number Publication date
KR101103964B1 (ko) 2012-01-13
US8121129B2 (en) 2012-02-21
US20100150150A1 (en) 2010-06-17

Similar Documents

Publication Publication Date Title
KR101103964B1 (ko) 통신 네트워크에서의 데이터 처리량의 최적화
JP7197612B2 (ja) オンデマンドネットワークコード実行システム上での補助機能の実行
JP7060724B2 (ja) タスクスケジューリング方法、リソース共有使用方法、スケジューラ、コンピュータ可読記憶媒体および装置
US20230062526A1 (en) Method, apparatus, computer readable medium, and electronic device for communication
KR101190413B1 (ko) 단 대 단 네트워크 qos의 강화
WO2020052605A1 (zh) 一种网络切片的选择方法及装置
KR101006114B1 (ko) 콘텐츠 푸시 서비스
KR20110132386A (ko) 서비스 품질을 이용한 관리형 공유식 네트워크에서의 적응식 예약 요청 및 스케쥴링 메커니즘
US9323591B2 (en) Listening for externally initiated requests
WO2012031436A1 (zh) 数据存储与鉴权并行的处理方法和终端
US20230037783A1 (en) Resource scheduling method and related apparatus
WO2016149945A1 (zh) 一种生命周期事件的处理方法及vnfm
CN112104679A (zh) 处理超文本传输协议请求的方法、装置、设备和介质
CN109076027B (zh) 网络服务请求
US8194658B2 (en) Transmitting and receiving method and apparatus in real-time system
US9749247B1 (en) System, method, and computer program for transmitting network communications at a point in time automatically determined based on communication rates
CN107329819A (zh) 一种作业管理方法及装置
CN116974748A (zh) 资源调度方法、节点、设备、介质和程序产品
CN113132264A (zh) 一种安全计算控制方法、数据包处理方法、装置及其系统
CN102075412A (zh) 一种网络数据传输速率控制设备及方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee