KR20040036688A - Platform and method for providing wireless data services - Google Patents

Platform and method for providing wireless data services Download PDF

Info

Publication number
KR20040036688A
KR20040036688A KR10-2003-7015206A KR20037015206A KR20040036688A KR 20040036688 A KR20040036688 A KR 20040036688A KR 20037015206 A KR20037015206 A KR 20037015206A KR 20040036688 A KR20040036688 A KR 20040036688A
Authority
KR
South Korea
Prior art keywords
service
communication
data
processing
network
Prior art date
Application number
KR10-2003-7015206A
Other languages
Korean (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
Priority claimed from US10/066,156 external-priority patent/US20020178118A1/en
Priority claimed from US10/061,526 external-priority patent/US20020177431A1/en
Priority claimed from US10/061,953 external-priority patent/US20020176378A1/en
Application filed by 프로켄트 시스템즈 코포레이션 filed Critical 프로켄트 시스템즈 코포레이션
Publication of KR20040036688A publication Critical patent/KR20040036688A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/24Accounting or billing

Abstract

사용자와 하나 이상의 데이터 서비스 사이의 패킷 베이스 데이터 통신 세션을 취급하는 방법을 사용하여 무선 전화 네트워크(120)의 이동 단말(132)과 데이터 네트워크, 예를 들면 인터넷(140)을 통해 상기 이동 단말에 액세스가능한 서비스 제공자(150) 사이의 패킷 베이스 데이터 세션을 모니터링 및 제어하도록 데이터 서비스를 작성, 제공한다. 임의의 특정 이동 단말에 있어서, 적시에 오버랩될 수 있는 다수의 서비스 대화은 이동 단말이 시스템과의 데이터 통신을 유지하는 기간 도중에 취급될 수 있다. 일 양태에 있어서, 상기 방법은 서비스를 위한 검출 포인트를 구성하는 단계를 포함하는 서비스를 노드 상에 제공하는 단계를 특성으로 한다. 노드가 통신을 처리한다. 상기 처리 단계는 상기 구성된 검출 포인트와의 일치를 확인하기 위하여 통신을 모니터링하는 단계를 포함한다. 상기 구성된 검출 포인트와의 일치가 확인되었을 때, 서비스의 서비스 논리가 검출 포인트에 통지된다.Access the mobile terminal via a mobile network 132 of the wireless telephone network 120 and a data network, such as the Internet 140, using a method of handling a packet-based data communication session between a user and one or more data services. Create and provide data services to monitor and control packet based data sessions between possible service providers 150. For any particular mobile terminal, multiple service conversations that can overlap in time can be handled during the period in which the mobile terminal maintains data communication with the system. In one aspect, the method features providing a service on a node comprising configuring a detection point for the service. The node handles the communication. The processing step includes monitoring the communication to confirm a match with the configured detection point. When matching with the configured detection point is confirmed, the service logic of the service is notified to the detection point.

Description

플랫폼 및 무선 데이터 서비스 제공 방법 {PLATFORM AND METHOD FOR PROVIDING WIRELESS DATA SERVICES}How to Provide Platform and Wireless Data Services {PLATFORM AND METHOD FOR PROVIDING WIRELESS DATA SERVICES}

AMPS(Analog Mobile Phone Service)와 같은 제1 세대 무선 전화 네트워크는 이동 전화 사용자가 음성 서비스와 같은 아날로그 서비스 제공자에게 연결할 수 있는 이동 통신을 제공하도록 아날로그 무선 통신 기술을 사용하였다. 이들 시스템은 이동 전화와 다른 컴퓨터 또는 장치 사이의 무선 네트워크를 통한 데이터 통신을 직접 지원하지 않았다.First generation wireless telephone networks, such as the Analog Mobile Phone Service (AMPS), used analog wireless communication technology to provide mobile communications that enable mobile phone users to connect to analog service providers such as voice services. These systems did not directly support data communication over wireless networks between mobile phones and other computers or devices.

오늘날 대부분의 무선 시스템은 디지털이며, GSM(Global System for Mobile communication), TDMA(Time Division Multiple Access) 및 CDMA(Code Division Multiple Access)를 포함하는 다수의 상이한 무선 통신 기술 및 시스템 구조를 기초로 한다. 이들 디지털 시스템을 일반적으로 제2 세대(2G) 시스템이라고 한다. 일반적으로, 이들 2G 시스템은 이동 단말(예를 들면, 이동 전화)이 특정 수신자와 접속되는 이동 서비스를 제공하도록 디지털 회로 교환 접속을 사용한다. 상기 무선 네트워크 상에 제공된 가장 일반적인 서비스는 랜드 투 모바일, 모바일 투 랜드, 모바일 투 모바일 통화와 같은 음성 서비스이다. 통화를 위한 음성 신호는 이동 단말과 고정된 이동 네트워크 사이를 무선으로 통신되는 도중에 디지털로 인코딩된다. 고정된 이동 네트워크에서, 인코딩된 음성 트래픽이 취급되고 개별 회로 베이스로 교환, 예를 들면 트래픽을 동일한 무선 네트워크 상의 다른 이동 단말, PSTN(Public Switched Telephone Network) 또는 다른 PLMN(Public Land Mobile Networks)으로 교환된다.Most wireless systems today are digital and are based on many different wireless communication technologies and system architectures, including Global System for Mobile Communication (GSM), Time Division Multiple Access (TDMA), and Code Division Multiple Access (CDMA). These digital systems are generally referred to as second generation (2G) systems. In general, these 2G systems use a digital circuit switched connection to provide a mobile service in which a mobile terminal (eg, a mobile phone) is connected to a particular recipient. The most common services provided on the wireless network are voice services such as land to mobile, mobile to land and mobile to mobile calls. The voice signal for the call is digitally encoded during wireless communication between the mobile terminal and the fixed mobile network. In fixed mobile networks, encoded voice traffic is handled and exchanged on separate circuit bases, for example, traffic is exchanged with other mobile terminals, public switched telephone networks (PSTNs), or other public land mobile networks (PLMNs) on the same wireless network. do.

이들 제2 세대 무선 네트워크의 데이터 서비스를 위한 지원은 다소 제한적이다. 이들 시스템의 한 가지 유형의 데이터 서비스는 길이로 256바이트까지인 짧은 데이터그램을 이동 전화까지 일방향으로 전송할 수 있는 짧은 메세지 서비스이다. GSM식과 같은 일부 2G 시스템은 SMS 메세지를 또한 양방향으로 전송할 수 있다. 그러나, SMS는 네트워크를 통한 적당한 전달 지연을 허용할 수 있는 독립된 메세지를 전송하도록 설계된다.Support for data services in these second generation wireless networks is somewhat limited. One type of data service in these systems is a short message service that can transfer short datagrams up to 256 bytes in length in one direction to the mobile phone. Some 2G systems, such as GSM, can also send SMS messages in both directions. However, the SMS is designed to send an independent message that can tolerate a moderate delivery delay through the network.

2G 시스템의 다른 유형의 데이터 서비스는 이동 단말(예를 들면, 이동 전화를 통해 연관된 컴퓨터의 이동 전화)과 특정 수신자 사이에 데이터 회로를 형성하는 회로-교환 데이터(circuit-switched data: CSD) 서비스이다. 이동 단말이 접속되어 있는 동안, 인코딩된 음성 트래픽을 지지하는데 사용되는 유형의 하나 이상의 채널을 전용으로 사용한다. 이들 채널의 전체 용량은 사용자에게 할당되고, 사용자는 "통화" 기간에 따라 광고되는 것이 일반적이다. 예를 들면, 이동 단말은 인터넷과 같은 데이터 네트워크까지의 게이트웨이에 접속될 수 있고, 일정 속도의 데이터 채널이 형성되어 이동 단말과 게이트웨이 사이에 유지된다. 따라서 CSD는 데이터 채널 용량의 많은 부분이 사용되지 않기 때문에 트래픽이 "폭주"(즉, 매우 높은 가변 데이터 속도) 상태인 패킷 교환 데이터 네트워크를 통해 통신하는데 특히 효과적이지 못하다. 예를 들면, 이동 단말로부터 인터넷 상의 서버까지의 "웹 브라우징"으로 인해 데이터 채널 사용이 폭주하게 된다.Another type of data service in a 2G system is a circuit-switched data (CSD) service that forms a data circuit between a mobile terminal (eg, a mobile phone of an associated computer via a mobile phone) and a particular receiver. . While the mobile terminal is connected, it dedicates one or more channels of the type used to support the encoded voice traffic. The total capacity of these channels is allocated to the user, and the user is typically advertised according to the "call" period. For example, the mobile terminal can be connected to a gateway to a data network such as the Internet, and a data channel of constant speed is formed and maintained between the mobile terminal and the gateway. Thus, CSDs are not particularly effective at communicating over packet switched data networks where traffic is “congested” (ie, very high variable data rates) because much of the data channel capacity is not used. For example, "web browsing" from a mobile terminal to a server on the Internet results in congestion of data channel usage.

제2 세대 네트워크가 이동 단말과 고정 네트워크 사이의 패킷 교환 데이터 통신을 위한 베어러 서비스를 보다 최적으로 제공할 수 있도록 하기 위하여, GPRS(General Packet Radio System)와 같은 업그레이드 기술이 개발되었다. GPRS에 따르면 GSM 시스템이 패킷 교환 데이터를 보다 효과적으로 취급할 수 있다. GPRS는 특정의 이동 단말용으로 전체 채널을 유지하지 않음으로써 부분적으로는 보다 효과적이다. GPRS식 시스템에서는, 여러 가지 노드가 표준 이동 네트워크 구조 내에 부가된다. PCU(Packet Control Unit)를 사용하여 패킷 데이터 교환 인터페이스를 네트워크의 무선 인터페이스에 제공한다. 하나 이상의 SGSN(Serving GPRS Support Nodes) 및 GGSN(Gateway GPRS Support Node)을 또한 부가하여 데이터 경로를 PCU로부터 외부 네트워크에 제공한다. 다른 GPRS 관련 노드도 부가될 수 있지만, 이들은 일반적으로 제2 세대 네트워크 상에 실행되는 최소 요구 조건이다. GPRS 인에이블 네트워크는 회로 교환 방법을 사용하여 음성 서비스를 여전히 취급한다. 그러나, 데이터 통신을 위한 GPRS의 중요한 특성은, CSD와 달리, GPRS는 특히 패킷 교환 데이터를 송신하도록 설계되어 있다는 점이다. 이러한 특성 때문에, 다수의 사용자가 동일한 서비스 무선 셀 내에 있더라도 네트워크의 무선 및 고정 베어러 리소스를 공유할 수 있다. 이것은 리소스 효율을 현저하게 증가시키고 네트워크 이용을 향상시킨다. GPRS는, 무선 링크 상태에 좌우되고 네트워크 무선 인터페이스 및 이동 단말 양자 모두에 의하여 상기 모드를 위한 특정의 겸용성이 요구되지만, 사용자 애플리케이션 속도를 이론적으로는 매 초당 115kB까지 제공할 수 있다. 데이터 베어러 서비스는 네트워크를 통해 전송되는 이동 단말로부터의 패킷 교환 데이터에 좌우되기 때문에, 다수의 애플리케이션 데이터 스트림이 이동 단말과 무선 네트워크의 내부 및 외부의 상이한 지점 사이로 전달될 수 있도록 베어러 서비스 상의 멀티플렉싱이 용이할 수 있다. 예를 들면, 사용자는 웹 브라우즈, 이메일 확인, 비디오폰 세션 가동 및 파일 다운로드를 동시에 실행할 수 있다.In order to enable the second generation network to more optimally provide a bearer service for packet switched data communication between a mobile terminal and a fixed network, an upgrade technique such as a general packet radio system (GPRS) has been developed. GPRS allows GSM systems to handle packet switched data more effectively. GPRS is more effective in part by not maintaining the entire channel for a particular mobile terminal. In a GPRS-type system, various nodes are added within the standard mobile network structure. The Packet Control Unit (PCU) is used to provide a packet data exchange interface to the wireless interface of the network. One or more Serving GPRS Support Nodes (SGSN) and Gateway GPRS Support Nodes (GGSN) are also added to provide the data path from the PCU to the external network. Other GPRS related nodes may also be added, but these are generally the minimum requirements to run on the second generation network. The GPRS enable network still handles voice services using circuit switched methods. However, an important characteristic of GPRS for data communication is that, unlike CSD, GPRS is specifically designed to transmit packet switched data. Because of this feature, multiple users can share the radio and fixed bearer resources of the network even if they are in the same service radio cell. This significantly increases resource efficiency and improves network utilization. GPRS depends on the radio link state and requires specific compatibility for this mode by both the network air interface and the mobile terminal, but can theoretically provide user application speeds up to 115 kB per second. Because data bearer services depend on packet-switched data from mobile terminals transmitted over the network, multiplexing on the bearer service is facilitated so that multiple application data streams can be delivered between the mobile terminal and different points inside and outside the wireless network. can do. For example, a user can simultaneously browse the web, check email, launch a videophone session, and download files.

본 발명은 데이터 통신 시스템에 데이터 서비스를 제공하는 방법에 관한 것이다.The present invention relates to a method for providing a data service in a data communication system.

도 1은 이동국의 사용자 번호에 데이터 서비스를 제공하는 무선 시스템의 도면이다.1 is a diagram of a wireless system that provides data services to a user number of a mobile station.

도 2는 GSM/GPRS 환경에서의 도 1에 도시된 무선 통신 시스템의 시스템 구조 도면이다.2 is a system architecture diagram of the wireless communication system shown in FIG. 1 in a GSM / GPRS environment.

도 3은 MSSP(Mobile Switching Services Platform)의 논리 구조의 도면이다.3 is a diagram of a logical structure of a mobile switching services platform (MSSP).

도 4는 MSSP의 Service Control Layer 구조의 도면이다.4 is a diagram of a Service Control Layer structure of an MSSP.

도 5는 TCP 플로의 검출 포인트의 용도를 예시하는 도면이다.5 is a diagram illustrating the use of detection points of a TCP flow.

도 6은 MSSP의 물리적 구조의 도면이다.6 is a diagram of the physical structure of an MSSP.

도 7은 MSSP의 입출력 모듈 및 서비스 모듈의 블록도이다.7 is a block diagram of an input / output module and a service module of the MSSP.

도 8은 스폰서 데이터 서비스의 흐름도이다.8 is a flowchart of a sponsor data service.

도 9는 교환식 데이터 서비스의 흐름도이다.9 is a flowchart of an exchangeable data service.

본 출원은 2001년 5월 22일 발명의 명칭 "Method for Sponsored Packet Switched Data Services on a Wireless Network"으로 출원된 미합중국 가출원 제60/292,564호 및 2001년 5월 25일 발명의 명칭 "Method for Transaction Based Packet Switched Data Service on a Wireless Network"으로 출원된 미합중국 가출원 제60/293,756호의 장점을 우선권으로 주장하는 것으로서, 이들 내용 모두를 참조하여 본 사양서에 연관시켰다.This application is incorporated by reference in US Provisional Application No. 60 / 292,564 filed May 22, 2001, entitled "Method for Sponsored Packet Switched Data Services on a Wireless Network," and May 25, 2001, entitled "Method for Transaction Based." Priority claims the advantages of US Provisional Application No. 60 / 293,756, filed "Packet Switched Data Service on a Wireless Network", all of which are incorporated herein by reference.

현재의 GPRS 시스템은 이동 전화 사용자의 데이터 서비스 이용에 대한 제공, 관리, 요금 및 광고에 있어서 제한된 옵션을 제공한다. 예를 들면, SGSN 및 GGSN은 데이터가 이동 단말에 접속되어 있는 기간 전체에 관한 통화 상세 기록(call detail record: CDR)을 작성할 수 있다. 이들 CDR에 따른 광고는 일반적으로 접속 기간, 이동 단말과 송수신된 데이터량, 또는 정액요금을 기준으로 한다.Current GPRS systems offer limited options in the provision, management, pricing and advertising of mobile phone users' use of data services. For example, SGSN and GGSN can create a call detail record (CDR) for the entire period of time that data is connected to the mobile terminal. Advertisements based on these CDRs are generally based on the duration of the connection, the amount of data sent and received with the mobile terminal, or a flat fee.

일반적인 양태에 있어서, 본 발명은 사용자와 하나 이상의 서비스 사이의 패킷식 데이터 통신 세션을 취급하는 메커니즘을 제공한다. 메커니즘은 데이터 서비스의 작성, 제공, 사용을 모니터에 적용할 수 있고, 무선 전화 네트워크의 이동 단말과 데이터 네트워크, 예를 들면 인터넷을 통해 이들 이동 단말에 접근가능한 컨텐츠 제공자 사이의 패킷식 데이터 세션을 제어한다. 임의의 특정 이동 단말에 있어서, 때에 맞춰 겹칠 수 있는 다수의 서비스 대화가 이동 단말이 시스템과 데이터 통신을 유지하는 기간 동안 취급될 수 있다.In a general aspect, the present invention provides a mechanism for handling packetized data communication sessions between a user and one or more services. The mechanism can apply to the creation, provision, and use of data services to monitor and control packetized data sessions between mobile terminals of wireless telephone networks and content providers accessible to these mobile terminals via data networks, for example, the Internet. do. For any particular mobile terminal, multiple service conversations that may overlap in time may be handled during the period in which the mobile terminal maintains data communication with the system.

데이터 통신의 취급은 계산 및 광고를 위한 모니터링, 서비스로의 액세스 제어, 및 액세스를 서비스로 전환 중 한 가지 이상을 특성으로 할 수 있다.The handling of data communications can be characterized by one or more of monitoring for calculations and advertisements, controlling access to services, and switching access to services.

계산 및 광고를 위한 세션의 모니터링은 각각의 통신 세션 성질에 의하여 결정된 하나 이상의 관계자에게 광고 및 사용된 시간별 계산, 전송된 데이터량, 또는 실행된 트렌잭션의 횟수 및 유형을 포함하는 각종의 상이한 광고 모델에 대한 지원을 제공한다.Monitoring of sessions for calculations and advertisements may include various different advertising models including advertisements and hourly calculations used, amount of data transferred, and the number and type of transactions executed, to one or more parties determined by the nature of each communication session. Provide support for

서비스로의 액세스는 각종의 서비스 관련 기준, 예를 들면 사용자 관련 정보에 따라 제어될 수 있다. 액세스를 제어하는 한 가지 예는 사용자가 선납액을 초과할 수 없도록 액세스가 제어되는 선납 데이터 서비스이다.Access to the service may be controlled according to various service related criteria, for example user related information. One example of controlling access is a prepaid data service in which access is controlled such that a user cannot exceed the prepayment amount.

서비스로의 액세스 재지시는 "가상 서비스"로 시도된 액세스를 실제 서비스로 지시하는 것을 포함한다. 이러한 유형의 재지시는 전화번호 네트워크에 의하여 지시된 무료("800") 전화번호와의 통화를 실제 전화번호로 지시하는 것과 유사하다.Redirecting access to a service includes directing the attempted access to the "virtual service" to the actual service. This type of redirection is analogous to directing a call to a free ("800") phone number indicated by the telephone number network to the actual phone number.

데이터 통신 세션의 취급은 세션에 관한 정보를 외부 시스템으로 전달하고, 세션을 추가로 취급하는 방법을 결정하는데 사용되는 명령을 외부 시스템으로부터 수신하는 것을 특징으로 할 수 있다. 예를 들면,"가상 서비스"로 재지시하는 경우, 외부 시스템은 가상 서비스에 접속하는 사용자의 시도에 관한 지시를 제공하도록 요구될 수 있고, 다음에 외부 시스템은 사용자가 지시 내려진 실제 서비스를 식별하는 응답을 보낸다.The handling of a data communication session may be characterized by passing information about the session to an external system and receiving instructions from the external system that are used to determine how to further handle the session. For example, when redirecting to a "virtual service", the external system may be required to provide an indication of the user's attempt to access the virtual service, which then identifies the actual service to which the user is directed. Send a response.

데이터 통신 세션의 취급은 세션을 위한 모델을 정하는 스테이트 머신을 사용하여 세션을 모니터링하는 것을 특징으로 할 수 있다. 모델의 미리 구성되거나 또는 구성가능한 상태 혹은 상태 교환은 스테이트 머신에 따라 모니터링되는 세션의 이벤트와 연관된다. 이들 상태 또는 상태 교환의 검출은 세션을 취급하는 방법을 결정한다.The handling of the data communication session may be characterized by monitoring the session using a state machine that establishes a model for the session. Preconfigured or configurable states or state exchanges of the model are associated with the events of the monitored session according to the state machine. The detection of these states or state exchanges determines how the session is handled.

일 양태에 있어서, 일반적으로, 본 발명은 데이터 네트워크의 노드를 통과하는 데이터 통신의 처리 방법에 관한 것이다. 상기 방법은 서비스를 위한 검출 포인트를 구성하는 단계를 포함하는 서비스를 노드 상에 제공하는 단계를 포함한다. 노드를 통과하는 통신은 노드에 의하여 처리된다. 상기 처리 단계는 상기 구성된 검출 포인트와의 일치 여부를 확인하기 위하여 통신을 모니터링하는 단계를 포함한다. 상기 구성된 검출 포인트와의 일치를 확인했을 때, 서비스에 대한 서비스 논리가 검출 포인트에 통지된다.In one aspect, the invention generally relates to a method of processing data communication through a node of a data network. The method includes providing a service on a node comprising configuring a detection point for the service. Communication through the node is handled by the node. The processing step includes the step of monitoring the communication to confirm the match with the configured detection point. When confirming the match with the configured detection point, the service logic for the service is notified to the detection point.

본 발명의 양태는 다음 특성 중 한 가지 이상을 포함할 수 있다:Aspects of the invention may include one or more of the following characteristics:

처리된 데이터 통신은 제2 세대 무선 전화 네트워크, 또는 제3 세대 무선 전화 네트워크와 같은 무선 네트워크로부터의 통신을 포함한다.The processed data communication includes communication from a wireless network, such as a second generation wireless telephone network, or a third generation wireless telephone network.

처리된 데이터 통신은 GPRS 인에이블 무선 네트워크로부터의 통신을 포함한다.The processed data communication includes communication from a GPRS enabled wireless network.

처리된 데이터 통신은 무선 지역 네트워크(wireless local area network: WLAN)로부터의 통신을 포함한다.The processed data communication includes communication from a wireless local area network (WLAN).

서비스를 제공하는 단계는 검출 포인트를 구성하기 위한 사양을 수신하는 단계를 포함한다.Providing a service includes receiving a specification for configuring a detection point.

서비스를 제공하는 단계는, 에를 들면, 노드 외부에서 실행되는 애플리케이션을 제공하도록 노드 외부의 서버로부터 서비스 구성 정보를 수신하는 단계를 포함한다.Providing a service includes receiving service configuration information from a server outside the node, for example, to provide an application running outside the node.

데이터 통신은 패킷 데이터 통신을 포함한다. 예를 들면, 패킷 데이터 통신은 인터넷 프로토콜(Internet Protocol: IP) 데이터 통신을 포함한다.Data communication includes packet data communication. For example, packet data communication includes Internet Protocol (IP) data communication.

검출 포인트를 구성하는 단계는 네트워크 계층, 전송 계층 또는 애플리케이션 계층과 같은 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계를 포함한다.Configuring the detection point includes specifying a characteristic at one or more protocol layers, such as a network layer, transport layer, or application layer.

전송 계층에서 특성을 지정하는 단계는 TCP(Transport Control Protocol)관련 특성을 지정하는 단계를 포함한다.Specifying an attribute at the transport layer includes specifying an attribute related to a transport control protocol (TCP).

애플리케이션 계층에서 특성을 지정하는 단계는 HTTP(Hyper Text Transport Protocol), RADIUS 애플리케이션 프로토콜, 또는 DNS(Domain Name Service) 프로토콜의 특성을 지정하는 단계를 포함한다.Specifying a property at the application layer includes specifying a property of a Hyper Text Transport Protocol (HTTP), a RADIUS application protocol, or a Domain Name Service (DNS) protocol.

하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 다수의 프로토콜 계층에서 특성을 지정하는 단계를 포함한다.Specifying a characteristic at one or more protocol layers includes specifying a characteristic at a plurality of protocol layers.

하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 하나 이상의 프로토콜 계층에서 데이터 패킷 필드를 식별하는 규정 표현을 지정하는 단계를 포함한다.Specifying a characteristic in one or more protocol layers includes specifying a regulatory expression that identifies a data packet field in one or more protocol layers.

상기 방법은, 검출 포인트와의 일치가 확인되었을 때, 서비스 논리에 따라 통신을 처리하는 단계를 포함한다.The method includes processing communication according to service logic when a match with a detection point is confirmed.

검출 포인트와의 일치가 확인되었을 때, 일치된 검출 포인트와 연관된 통신은 중단된다.When a match with the detection point is confirmed, the communication associated with the matched detection point is stopped.

통신을 추가로 처리하는 단계는 서비스 논리로부터 이벤트 검출 포인트에 대한 사양을 수신하는 단계, 이벤트 검출 포인트를 구성하는 단계, 및 상기 구성된 이벤트 검출 포인트와의 일치를 확인하기 위하여 통신을 모니터링하는 단계를 포함한다.Further processing the communication includes receiving a specification for an event detection point from service logic, configuring an event detection point, and monitoring the communication to confirm conformity with the configured event detection point. do.

통신을 추가로 처리하는 단계는 통신을 전환하는 단계를 포함한다.Processing the communication further includes diverting the communication.

통신을 추가로 처리하는 단계는 서비스와 연관된 목적지에 통신 터널을 통하여 통신을 전송하는 단계를 포함한다.Further processing the communication includes sending the communication over a communication tunnel to a destination associated with the service.

통신을 추가로 처리하는 단계는 통신을 필터링하는 단계를 포함한다.Processing the communication further includes filtering the communication.

필터링하는 단계는 패킷 내에 확인된 어드레스에 따라 데이터 패킷을 차단시키는 단계를 포함한다.Filtering includes blocking the data packet according to an address identified within the packet.

통신을 추가로 처리하는 단계는 폴리시를 통신에 적용하는 단계를 포함한다.Processing the communication further includes applying the policy to the communication.

폴리시를 통신에 적용하는 단계는 데이터 속도 폴리시를 적용하는 단계를 포함한다.Applying the policy to the communication includes applying a data rate policy.

서비스를 제공하는 단계는 서비스 대화에 대한 누산 특성을 식별하는 단계를 포함한다. 노드를 통과하는 통신을 처리하는 단계는 서비스와 각각 연관된 데이터 통신의 서비스 대화를 검출하고, 상기 검출된 서비스 대화에 대한 누산 정보를 기록하는 단계를 더 포함한다.Providing the service includes identifying an accumulated characteristic for the service conversation. Processing the communication passing through the node further includes detecting a service conversation of the data communication associated with each service and recording accumulated information about the detected service conversation.

상기 검출된 서비스 대화에 대한 누산 정보를 기록하는 단계는 서비스 대화에 전송된 데이터량을 기록하는 단계를 포함한다.Recording the accumulated information for the detected service conversation includes recording the amount of data transmitted in the service conversation.

전송된 데이터량을 기록하는 단계는 패킷 수를 기록하는 단계를 포함한다.Recording the amount of data transmitted includes recording the number of packets.

전송된 데이터량을 기록하는 단계는 바이트 수에 비례하는 수를 기록하는 단계를 포함한다.Recording the amount of data transmitted includes recording a number proportional to the number of bytes.

전송된 데이터량을 기록하는 단계는 노드를 일방향으로 통과한 데이터량을 기록하는 단계를 포함한다.Recording the amount of data transmitted includes recording the amount of data that has passed through the node in one direction.

검출된 서비스 대화에 대한 누산 정보를 기록하는 단계는 서비스 대화 도중에 전송된 데이터 속도를 기록하는 단계를 포함한다.Recording the accumulation information for the detected service conversation includes recording the data rate transmitted during the service conversation.

다른 양태에 있어서, 본 발명은 데이터 네트워크의 노드를 통과하는 데이터 통신을 처리하는 방법에 관한 것이다. 상기 방법은 구성된 검출 포인트와의 일치를 확인하기 위하여 통신 세션에 대한 데이터 패킷을 모니터링하는 단계를 포함하여, 노드를 통과하는 데이터 통신의 통신 세션을 처리하는 단계를 포함한다. 통신 세션 중 하나의 구성된 검출 포인트와 일치가 확인되었을 때, 검출 포인트를 확인하는 요구가 외부 서비스 논리에 전송된다. 통신 세션은 전송된 요구에 응답하여 서비스 논리로부터 수신된 정보에 따라 추가로 처리된다.In another aspect, the present invention relates to a method of processing data communication through a node of a data network. The method includes processing a communication session of data communication through the node, including monitoring data packets for the communication session to confirm conformity with the configured detection point. When a match with the configured detection point of one of the communication sessions is confirmed, a request to confirm the detection point is sent to the external service logic. The communication session is further processed according to the information received from the service logic in response to the transmitted request.

다른 양태에 있어서, 일반적으로, 본 발명은 데이터 네트워크의 노드를 통과하는 데이터 상에 제공된 서비스를 누산하는 단계를 포함한다. 상기 방법은 서비스를 제공하는 단계를 포함한다. 상기 제공 단계는 서비스 대화에 대한 통신의 특성을 확인하는 단계를 포함한다. 서비스 대화은 서비스의 특정 사용자와 각각 연관된 데이터 통신에서 검출된다. 다음에, 검출된 서비스 대화 관련 정보가 제공된다.In another aspect, in general, the present invention includes accumulating a service provided on data passing through a node of a data network. The method includes providing a service. The providing step includes identifying characteristics of the communication for the service conversation. Service conversations are detected in data communications each associated with a particular user of the service. Next, the detected service conversation related information is provided.

또 다른 양태에 있어서, 일반적으로, 본 발명은 무선 전화 네트워크 상의 이동국과 고정 네트워크 상의 컨텐츠 제공자 사이의 패킷 데이터 통신을 처리하는 방법에 관한 것이다. 상기 방법은 서비스에 대한 서비스 논리를 구성하는 단계를 포함하여, 무선 네트워크와 고정 네트워크를 연관시키는 노드 상에 서비스를 제공하는 단계를 포함한다. 무선 전화 네트워크와 고정 네트워크 사이에서 노드를 통과하는 패킷 데이터 통신은 노드에서 처리된다. 상기 처리 단계는 제공된 서비스와 연관된 통신 세션을 확인하도록 통신을 모니터링하는 단계를 포함한다. 검출 포인트는 확인된 통신 세션에서 일치되고, 서비스 논리는 검출 포인트의 일치에 응답하여 실행된다.In yet another aspect, the present invention generally relates to a method for processing packet data communication between a mobile station on a wireless telephone network and a content provider on a fixed network. The method includes providing a service on a node that associates a wireless network with a fixed network, including configuring service logic for the service. Packet data communication through the node between the radiotelephone network and the fixed network is handled at the node. The processing step includes monitoring the communication to confirm a communication session associated with the provided service. The detection point is matched in the confirmed communication session, and service logic is executed in response to the match of the detection point.

서비스 논리를 실행하는 단계는 외부 서비스 플랫폼과 통신하는 단계를 포함할 수 있고, 패킷 데이터 통신을 처리하는 단계는 상기 외부 서비스 플랫폼으로부터 수신된 정보에 따라 통신을 처리하는 단계를 포함한다.Executing service logic may include communicating with an external service platform, and processing packet data communication includes processing a communication in accordance with information received from the external service platform.

다른 양태에 있어서, 일반적으로, 본 발명은 통신 노드에 관한 것이다. 노드는 서비스에 대한 제공 정보를 수용하도록 구성된 서비스 관리 프로그램을 포함한다. 상기 노드는, 서비스 관리 프로그램에 연관되고 상기 수용된 제공 정보를 기억하는 기억 장치를 포함하는 데이터베이스를 또한 포함한다. 상기 노드는 패킷 데이터 통신을 노드를 통과시키고 구성가능한 이벤트를 데이터 통신에서 검출하는 회로를 포함한다. 서비스 실행 엔진은 서비스 관리 프로그램과 통신하고, 데이터를 통과시키는 회로용의 검출된 이벤트의 통지를 수신하도록 프로그래밍된다.In another aspect, the invention generally relates to a communication node. The node includes a service management program configured to receive provisioning information about the service. The node also includes a database associated with a service management program and including a storage device for storing the received provision information. The node includes circuitry for passing packet data communication through the node and detecting configurable events in the data communication. The service execution engine is programmed to communicate with the service management program and to receive notification of the detected event for the circuit passing the data.

데이터베이스는 상세 기록용 기억 장치를 더 포함할 수 있고, 서비스 실행 엔진은 상기 수신된 통지에 응답하여 상세 기록를 생성하도록 추가로 프로그래밍된다.The database may further include a storage device for detailed recording, and the service execution engine is further programmed to generate a detailed recording in response to the received notification.

본 발명은 다음 장점 중 한 가지 이상을 제공할 수 있다.The present invention can provide one or more of the following advantages.

상세한 계산 및 요금 모델은 상기 구성을 사용하여 구현될 수 있다. 예를 들면, 이동 전화로 무선 네트워크와 테이터 통신 중인 동안, 데이터 통신 중 일부는 사용자에게 청구되고, 일부는 무료 데이터 서비스의 서비스 제공자에게 청구되며, 일부는 사용자의 고용주인 데이터 서비스의 스폰서에게 청구될 수 있다. 상기 상세한 요금은 현존하는 상세 기록에 의하여 제공된 비교적 조잡한 세분성 때문에 오늘날의 무선 데이터 네트워크 운용자는 이용하지 않는다.Detailed calculation and pricing models can be implemented using the above configuration. For example, while in data communication with a wireless network with a mobile phone, some of the data communication may be billed to the user, some to the service provider of the free data service, and some to the sponsor of the data service, which is the employer of the user. have. This detailed fee is not used by today's wireless data network operators because of the relatively crude granularity provided by the existing detailed records.

이벤트 및 트리거 검출을 상당히 복잡한 서비스 논리로부터 분리시킴으로써 하드웨어 구성에서 임의의 변경없이 서비스 논리를 변형시킬 수 있다. 상기 방법은 스위칭 시스템이 SCP(Service Control Point)에 상주하는 제어 논리로부터 분리된 IN(Intelligent Network) 베이스 전화 네트워크에서 알 수 있는 많은 장점을 제공한다. IN-베이스 전화 네트워크에 있어서, 통화 플로의 적절한 검출 포인트를인에이블함으로써, 스위칭 시스템을 변경시키지 않고 새로운 서비스가 구현될 수 있다. 데이터 서비스용 메커니즘을 사용함으로써, 유한 스테이트 모델에 따라 데이터 패킷 통신을 모니터링하고, 외부 서비스 논리를 지원하도록 상기 모델의 검출 포인트를 이네이블함으로써 유사한 분리가 달성된다.By separating event and trigger detection from fairly complex service logic, the service logic can be modified without any change in hardware configuration. The method provides a number of advantages that can be seen in an Intelligent Network (IN) based telephone network where the switching system is separate from the control logic residing in the Service Control Point (SCP). In an IN-based telephone network, by enabling an appropriate detection point of a call flow, a new service can be implemented without changing the switching system. By using a mechanism for data services, similar separation is achieved by monitoring data packet communications according to a finite state model and enabling the detection points of the model to support external service logic.

상기 방법은 당연히 무선 전화 네트워크와 외부 고정 네트워크 사이의 데이터 통신을 취급하는데 한정되는 것은 아니다. 패킷 데이터의 미세한 제어 및 모니터링은 다른 환경에 적용가능하다. 예를 들면, 상기 방법은 유선 네트워크 사이, 또는 무선 지역 네트워크 상에서 패킷 통신을 취급하는데 적용가능하다.The method is naturally not limited to handling data communication between a wireless telephone network and an external fixed network. Fine control and monitoring of packet data is applicable to other environments. For example, the method is applicable to handling packet communications between wired networks or over wireless local area networks.

본 발명의 다른 특성 및 장점은 다음의 상세한 설명 및 특허청구범위로부터 명백하게 이해될 수 있을 것이다.Other features and advantages of the invention will be apparent from the following detailed description and claims.

도 1을 참조하면, 무선 통신 시스템(100)에서, 무선 휴대 전화와 같은 다수의 이동국(mobile station: MS)(132)과 웹 서버와 같은 다수의 컨텐츠 제공자(150) 사이에는 이동 데이터-교환 센터(mobile data-switching center: MDSC)(110)에 의하여 데이터 통신이 행해진다. 이동 단말(132)은 이동 사용자(130)에 의하여 조작되고, 무선 링크를 통해 트랜시버 기지국(base transceiver station: BTS)(122)과 통신한다. BTS(122)는 MDSC(110)와 MS(132) 사이에서 통신하는 고정 네트워크 통신 인프라스트럭처를 제공하는 이동 네트워크(120)를 통해 MDSC(110)에 연관된다. MDSC(110)는 데이터 네트워크, 본 명세서에서 공중 인터넷(140)을 통해 컨텐츠 제공자(150)에 또한 결합된다.Referring to FIG. 1, in the wireless communication system 100, a mobile data-exchange center is provided between a plurality of mobile stations (MS) 132 such as wireless cellular phones and a plurality of content providers 150 such as a web server. Data communication is performed by a mobile data-switching center (MDSC) 110. Mobile terminal 132 is manipulated by mobile user 130 and communicates with a transceiver base station (BTS) 122 via a wireless link. BTS 122 is associated with MDSC 110 via mobile network 120, which provides a fixed network communication infrastructure that communicates between MDSC 110 and MS 132. MDSC 110 is also coupled to content provider 150 via a data network, herein the public Internet 140.

무선 통신 시스템(100)은 MS(132)와, 신호 방식 7(SS7) 인프라스트럭처에 의하여 제어되는 전화망, 즉 공중 전화 교환망(PSTN/SS7) 사이의 음성 통신을 또한 지원한다. 이동 교환 센터(MSC)(180)는 이동 네트워크(120)와 PSTN/SS7(190) 사이에 결합된다.The wireless communication system 100 also supports voice communication between the MS 132 and the telephone network, ie, public switched telephone network (PSTN / SS7), controlled by the signaling scheme 7 (SS7) infrastructure. Mobile switching center (MSC) 180 is coupled between mobile network 120 and PSTN / SS7 190.

이동 데이터 교환 센터(MSDC)(110)로 인하여 MS(132)와 컨텐츠 제공자(150) 사이의 이동 데이터 통신 세션의 처리가 더 향상된다. 한 가지 유형의 처리는 광고를 위한 세션의 모니터링에 관한 것이다.Mobile Data Exchange Center (MSDC) 110 further enhances the processing of mobile data communication sessions between MS 132 and content provider 150. One type of processing relates to the monitoring of sessions for advertisements.

상기 모니터링의 일 양태는 MS(132)가 인터넷(140)을 통해 데이터 통신 중에발생하는 개별 세션의 트래킹 및 처리에 관한 것이다. 예를 들면, MS(132)는 일정 기간 동안 이동 네트워크(120)를 통해 데이터 통신을 설정할 수 있다. MS(132)에는 이동 네트워크(120)를 통해 데이터 통신 중인 일정 기간 사용하도록 인터넷 프로토콜(IP) 어드레스가 할당되고, 인터넷에 연관된 고정 컴퓨터와 당연히 동일한 방식으로 인터넷(140)을 통해 다른 장치와 통신할 수 있다. 따라서, MS(132)는 상이한 컨텐츠 제공자(150)와 다수의 통신 세션을 설정할 수 있고, 이들 세션은 시간 내에 오버랩될 수 있다. 컨텐츠 제공자의 예는 HTTP(Hyper Text Transport Protocol)를 사용하여 컨텐츠를 제공하는 오늘날의 웹 서버와 같은 컨텐츠 서버 또는 POP(Post Office Protocol)을 사용하여 메일 메세지를 제공하는 메일 서버를 포함한다.One aspect of such monitoring relates to the tracking and processing of individual sessions that occur during data communication by the MS 132 over the Internet 140. For example, MS 132 may establish data communication over mobile network 120 for a period of time. The MS 132 is assigned an Internet Protocol (IP) address to use for a period of time in data communication over the mobile network 120 and communicates with other devices via the Internet 140 in the same manner as a fixed computer associated with the Internet. Can be. Thus, MS 132 may establish multiple communication sessions with different content providers 150, which may overlap in time. Examples of content providers include content servers, such as today's Web servers that provide content using Hyper Text Transport Protocol (HTTP) or mail servers that provide mail messages using Post Office Protocol (POP).

MDSC(110)는 MS(132)와 컨텐츠 제공자(150) 사이의 데이터 대화를 위한 서비스 모델을 실행한다. 요약하면, "서비스"란 값을 사용자에게 제공하는 방식으로 컨텐츠 또는 기능을 사용자(130)에게 전달하는 것을 말한다. 특정 서비스는 시작, 중간, 및 종료를 각각 갖는 사용자와의 대화를 한정하고, 특정의 컨텐츠 제공자(150)와 연관되는 것이 일반적이다.MDSC 110 executes a service model for data conversations between MS 132 and content provider 150. In summary, "service" refers to delivering content or functionality to user 130 in a manner that provides a value to the user. A particular service defines a conversation with a user having a start, a middle, and an end, respectively, and is typically associated with a particular content provider 150.

운용자(135)는 MDSC(110) 상에 여러 가지 유형의 다수 서비스를 제공한다. 시스템은 물리적 무선 네트워크의 운용자(135)는 물론 다수의 이동 가상 네트워크 운용자(Mobile Virtual Network Operator: MVNO)를 포함할 수 있다. 예를 들면, 상이한 서비스는 상이한 컨텐츠 제공자(150)와 연관될 수 있다. 서비스는 일반적으로 사용자(130)에 의하여 서비스 사용에 관한 상세 기록을 생성하도록 캡처되는광고 정보를 정한다. 서비스의 정의는 소정의 서비스와 연관된 특정의 서비스 또는 특성을 억제하도록 사용자 또는 사용자 그룹에 대하여 적용될 수 있는 규제 정보 등급을 또한 제공할 수 있다. MDSC(110)는 운용자(135)에게 제공될 수 있는 실행 및 사용 요금을 선택적으로 수집한다. MDSC(110)는 서비스 상세 기록(SDR)을 작성하여 운용자(130)에게 또한 제공되는 서비스 대화의 부분적 또는 전체적인 요약을 제공한다. 운용자(130)가 SDR을 사용하는 한 가지 용도는 광고를 위한 것이다. 일반적으로 단일 SDR은, 부분적인 기록은 적어도 부분적인 광고 기록이 시스템이 완전하게 고장난 경우에 확실하게 이용할 수 있도록 자원 집약 서비스 대화를 위해 발생될 수 있지만, 특정 사용자의 서비스 대화를 요약하도록 작성된다. 다수의 SDR은 서비스 대화 비용이 여러 당사자 사이, 예를 들면, 광고주, 가입자, 및 스폰서 사이로 분할될 때 또한 발생될 수 있다.The operator 135 provides a number of different types of services on the MDSC 110. The system may include a number of Mobile Virtual Network Operators (MVNOs) as well as operators 135 of the physical wireless network. For example, different services may be associated with different content providers 150. The service typically determines the advertisement information that is captured by the user 130 to generate a detailed record of the service usage. The definition of a service may also provide a regulatory information class that may be applied to a user or group of users to inhibit a particular service or characteristic associated with a given service. MDSC 110 optionally collects execution and usage fees that may be provided to operator 135. MDSC 110 creates a Service Detail Record (SDR) to provide a partial or complete summary of service conversations that are also provided to operator 130. One use of the operator 130 with SDR is for advertising. In general, a single SDR is written to summarize the service conversation of a particular user, although a partial record may be generated for a resource intensive service conversation so that at least the partial advertisement record is reliably available in the event of a complete system failure. Multiple SDRs may also occur when service conversation costs are split between multiple parties, for example between advertisers, subscribers, and sponsors.

운용자(130)가 MDSC(110) 상에 제공하는 서비스 정의의 일부로서, 초기 검출 포인트는 서비스 사용자(130)와의 대화 시작을 지정한다. MDSC(110)는 특정 유형의 패킷에 각각 응답가능한 스테이트 머신에 따라 각종의 프로토콜 계층에서 여러 가지 상이한 유형의 데이터 패킷을 모니터링 및 제어한다. 각각의 스테이트 머신 내에는 중요한 정보를 이용할 수 있거나 주요한 제어 결정이 행해질 수 있는 특정의 전략적인 위치가 있다. 이들 위치를 검출 포인트라고 한다. 서비스 정의는 특정의 검출 포인트를 서비스에 대한 초기 검출 포인트로서 식별한다. MDSC(110)가 이를 통과하여 흐르는 데이터에서 상기의 초기 검출 포인트를 식별할 때, 연관된 서비스의 서비스 논리가 실행된다. 서비스 논리는 일반적으로 대화 지속을 위하여서비스와 사용자의 대화를 정한다. 서비스 대화 도중에, 서비스 논리는 각종의 스테이트 머신에 추가의 검출 포인트를 등록하여 패킷 데이터에 실시간 액세스를 얻고, 스테이트 머신에 의하여 만들어진 제어 판정에 영향을 미칠 수 있다.As part of the service definition provided by the operator 130 on the MDSC 110, the initial detection point specifies the start of a conversation with the service user 130. The MDSC 110 monitors and controls a variety of different types of data packets at various protocol layers, depending on which state machines are each capable of responding to a particular type of packet. Within each state machine is a specific strategic location where important information is available or where major control decisions can be made. These positions are called detection points. The service definition identifies the specific detection point as the initial detection point for the service. When MDSC 110 identifies the initial detection point in the data flowing through it, the service logic of the associated service is executed. Service logic generally establishes a dialogue between the service and the user in order to continue the conversation. During the service conversation, the service logic may register additional detection points with various state machines to obtain real time access to the packet data and influence the control decisions made by the state machine.

MDSC(110)는 MS(132)와 인터넷(110) 사이를 통과하는 모든 데이터 패킷을 검사한다. 애플리케이션에 대한 검출 포인트 발생 사이에, 데이터는 서비스 논리의 간섭없이 MDSC(110)를 통과한다. 따라서, 대부분의 패킷이 검사되고, 검사로 인한 추가의 지연없이 MDSC(110)를 통과한다. 통신 세션의 시작 또는 종료와 연관된 패킷과 같은 일부 패킷은 추가의 처리를 필요로 할 수 있고, MDSC 또는 MDSC에 연관된 외부 서비스 플랫폼에 실행된 서비스 논리에 의하여 작용될 때까지 인터셉트 및 지연될 수 있다.MDSC 110 examines all data packets passing between MS 132 and Internet 110. Between detection point generations for an application, data passes through the MDSC 110 without interference of service logic. Thus, most packets are examined and passed through MDSC 110 without further delay due to the inspection. Some packets, such as those associated with the start or end of a communication session, may require further processing and may be intercepted and delayed until acted upon by the service logic executed on the MDSC or external service platform associated with the MDSC.

MDSC(110)는 프로토콜 스택의 각종 계층에서 데이터 통신을 처리한다. 예를 들면, MDSC(110)는 IP, UDP, TCP 또는 다른 프로토콜은 물론, HTTP와 같은 상위 계층 프로토콜 내의 세션을 처리한다. 또한, MDSC(110)는 사용자(130)가 "세션"으로 이해하는 "서브" 세션을 처리한다. 예를 들면, 사용자가 웹 서버 상의 HTML(Hyper Text Markup Language) 문서에 액세스할 때, 다수의 상이한 컨텐츠 제공자로부터 사용자에게 데이터가 전송될 수 있다. 예를 들면, 별개의 "서브" 세션이 MS(132)와 광고주(160) 사이에 설정되어 사용자가 검색 중인 컨텐츠가 컨텐츠 제공자로부터 제공될 수 있는 한편 광고주로부터 광고 컨텐츠가 전달된다. 일반적으로, MDSC(11)는 표준 ISO 프로토콜 스택의 계층(7)(애플리케이션 계층)을 통해 임의의 계층(2)(데이터 링크 계층)의 세션 데이터를 처리한다.MDSC 110 handles data communication at various layers of the protocol stack. For example, MDSC 110 processes sessions in higher layer protocols such as HTTP, as well as IP, UDP, TCP or other protocols. In addition, MDSC 110 processes a "sub" session that user 130 understands as a "session". For example, when a user accesses a Hyper Text Markup Language (HTML) document on a web server, data may be sent to the user from a number of different content providers. For example, a separate "sub" session may be established between the MS 132 and the advertiser 160 such that the content the user is searching for may be provided from the content provider while the advertising content is delivered from the advertiser. In general, MDSC 11 processes session data of any layer 2 (data link layer) via layer 7 (application layer) of the standard ISO protocol stack.

MDSC(110)을 통과하는 통신 데이터의 모니터링에 따라, MDSC(110)는 각종 유형의 상세 기록를 무선 시스템의 운용자(130)에게 일반적으로는 실시간(즉, 주기적인 배치 처리와 반대로 거의 지연없이)에 보낸다. 상이한 광고 폴리시가 사용자에 의하여 실행될 서비스에 따라 통신 세션에 적용된다. 폴리시의 상이점은 광고 기초, 예를 들면, 세션 기간, 세션 도중에 전송된 데이터량, 또는 세션 도중에 실행되는 컨텐츠 제공자와의 트렌잭션 횟수 또는 유형을 포함한다. 다른 차이는 세션 지불인을 포함하고, 이것은 사용자(132), 컨텐츠 제공자(150), 또는 사용자와 통신하는 광고주(160) 중 하나 이상을 포함할 수 있다. 지불인은 사용자와 직접적으로 통신하지 않을 수 있는 세션 스폰서(170)를 또한 포함할 수 있다. 스폰서의 예는 사용자의 고용주이다.In accordance with the monitoring of communication data passing through the MDSC 110, the MDSC 110 sends various types of detailed records to the operator 130 of the wireless system generally in real time (i.e. with little delay as opposed to periodic batch processing). send. Different advertising policies apply to communication sessions depending on the services to be executed by the user. The differences in policy include the advertising basis, for example, the duration of the session, the amount of data transmitted during the session, or the number or type of transactions with the content provider executed during the session. Another difference includes the session payer, which may include one or more of the user 132, the content provider 150, or the advertiser 160 in communication with the user. The payer may also include session sponsor 170, which may not communicate directly with the user. An example of a sponsor is the employer of the user.

광고를 위해 통신 데이터를 모니터링하는 외에, MDSC(110)는 제어를 위해 통신 데이터를 모니터링한다. 통신 세션의 제어 예는 사용자가 특정의 세션을 설정하도록 허용되었는 가의 여부를 결정하는 것을 포함하는 액세스 제어이다. 예를 들면, 액세스 제어는 사용자가 접속하려고 시도하는 서비스에 가입한 사용자에 좌우될 수 있다. 또한, 액세스 제어는 사용자가 계정의 잔액이 충분한 경우 서비스에 액세스할 수 있는 선납 모델에 좌우될 수 있다. 다른 유형의 액세스 제어는 액세스하려는 서비스에 대한 자격 증명(예를 들면, 암호) 또는 지불 동의를 제공하는 사용자에 좌우될 수 있다. MDSC는 사용자가 세션을 설정하도록 허용되었는 가의 여부를 결장하도록 운용자(130)와 통신할 수 있다.In addition to monitoring communication data for advertisements, MDSC 110 also monitors communication data for control. An example of control of a communication session is access control that includes determining whether a user is allowed to establish a particular session. For example, access control may depend on a user subscribing to a service that the user attempts to connect to. In addition, access control may depend on a prepaid model in which a user can access the service if the balance of the account is sufficient. Other types of access control may depend on the user providing credentials (eg, a password) or payment agreement for the service to access. The MDSC may communicate with the operator 130 to determine whether the user is allowed to establish a session.

다른 유형의 통신 세션 제어는 전환을 포함한다. 사용자는 서비스와 통신세션의 설정을 시도할 수 있고, 상기 시도의 모니터링에 따라, MDSC(110)는 특정의 컨텐츠 제공자(150)로 통신을 전환한다. 상기 전환은 하나의 컨텐츠 제공자와 다른 컨텐츠 제공자(150)와의 통신 세션을 설정하는 요구를 전환하는 것을 포함할 수 있다. 전환은 "가상" 서비스와 실제 컨텐츠 제공자(150)와의 통신 요구를 전환하는 것을 또한 포함할 수 있다. 예를 들면, 서비스는 "Flower"와 같은 네임으로 식별될 수 있고, MDSC(110)는 플라워의 온라인 주문을 제공하는 컨텐츠 제공자로 요구를 전환한다. 전환 성질은 구성가능하다는 점이다. 전환은 세션을 설정하려고 시도하는 사용자의 특정 특성, 예를 들면, 이들이 "부케" 서비스에 가입했는 가의 여부에 좌우될 수 있다. 또한, 전환은 사용자가 사용하는 이동국(132)의 특성, 예를 들면, MS의 지리적인 위치, 또는 MS 장치의 성능에 좌우될 수 있다.Another type of communication session control involves switching. The user may attempt to establish a communication session with the service, and upon monitoring the attempt, the MDSC 110 switches communication to a specific content provider 150. The transition can include diverting a request to establish a communication session with one content provider and another content provider 150. The transition can also include diverting a communication request between the "virtual" service and the actual content provider 150. For example, a service may be identified by a name such as "Flower" and MDSC 110 redirects the request to a content provider that provides online orders of flowers. The conversion property is configurable. The conversion may depend on the specific characteristics of the user attempting to establish the session, such as whether or not they have subscribed to a "bouquet" service. In addition, the switching may depend on the characteristics of the mobile station 132 used by the user, such as the geographic location of the MS, or the performance of the MS device.

이들 형태의 전환은 지능 네트워크(Intelligent Network: IN)식 전화 방식의 전화 통화를 전환하는 여러 가지 특성을 공유한다. 예를 들면, 사용자가 무효 통화 전화번호, 즉 1-800-FLOWERS(1-800-356-9377)로 전화를 건 경우, 통화는 전화 스위치에 의하여 검출된다. 외부 플랫폼은, 특히 SCP에서, 검출된 무료 전화 번호 통지를 수신하고, 통화가 되는 실제 전화 번호를 결정한다. 전술한 데이터 서비스 접근법에서, MSSP는 외부 플랫폼이 가상 데이터 서비스가 지정되는 위치를 결정하도록 요구할 수 있다.These types of transitions share many of the characteristics of diverting intelligent telephone (IN) phone calls. For example, when a user dials an invalid call telephone number, i.e., 1-800-FLOWERS (1-800-356-9377), the call is detected by a telephone switch. The external platform, in particular in SCP, receives the detected free telephone number notification and determines the actual telephone number to which the call is made. In the data service approach described above, the MSSP may require the external platform to determine where the virtual data service is designated.

도 2를 참조하면, 일 양태의 무선 시스템(100)에 있어서, 도 1에 도시된 시스템의 기능은 데이터 통신이 GPRS(General Packet Radio Service) 접근법에 따라 제공된 GSM-식 시스템으로 실행된다. 상기 예에서, 추가의 네트워크 요소, 이동서비스 변환 프로세서(MSSP)(260)가 이동 네트워크(120)와 인터넷(140) 사이의 통신 경로의 표준 GSM/GPRS 구성 내에 삽입된다. 일반적으로, MSSP(260)는 전술한 바와 같이 세션 모니터링 및 제어 기능이 실행된다.With reference to FIG. 2, in one aspect of the wireless system 100, the functionality of the system shown in FIG. 1 is implemented in a GSM-type system in which data communication is provided according to a General Packet Radio Service (GPRS) approach. In this example, an additional network element, Mobile Service Translation Processor (MSSP) 260, is inserted into the standard GSM / GPRS configuration of the communication path between mobile network 120 and the Internet 140. In general, MSSP 260 executes session monitoring and control functions as described above.

상기 양태의 시스템에 있어서, GGSN(Gateway GPRS Support Node)(250)은 MS(132)와 인터넷(140)과 같은 외부 네트워크 사이에 통신을 위한 게이트웨이를 제공한다. 이동 네트워크(120) 내에서, 접속된 하나 이상의 BT(122)와 함께 BSS(Base Station System)(220)를 형성하는 BSC(Base Station Controller)(222)는 하나 이상의 MS(132)와의 무선 통신의 고정 단말을 제공한다. MS(132)가 이동할 때, 시스템과 음성 또는 데이터 통신 중인 경우에도, MS는 다수의 상이한 BSS(222)와 통신할 수 있고, 시스템은 표준 기술에 따라 상기 이동성을 관리하여 MS와의 통신을 유지한다.In the system of the above aspect, Gateway GPRS Support Node (GGSN) 250 provides a gateway for communication between the MS 132 and an external network such as the Internet 140. Within the mobile network 120, a base station controller (BSC) 222, which forms a base station system (BSS) 220 with one or more BT 122 connected, is responsible for wireless communication with one or more MSs 132. Provide a fixed terminal. As the MS 132 moves, the MS can communicate with a number of different BSSs 222 even when in voice or data communication with the system, and the system maintains communication with the MS by managing the mobility according to standard techniques. .

MS(132)로부터의 음성 및 데이터 통신은 BSC(222)의 도시되지 않은 PCU(Packet Control Unit)에서 분할된다. 음성 통신은 MSC(180)를 통과하는 한편 데이터 통신은 SGSN(230)을 통과한다. MSC(180)는 SS7 네트워크(292)를 통한 제어 통신을 사용하여 PSTN(290)을 통한 음성 회로을 셋업한다. 이들 음성 회로의 제어는 MSC(180) 액세스가 사용자와 통화를 위하여 적당한 밸런스를 갖는 가의 여부를 결정하도록 SS7 네트워크를 통해 서비스되는 선불 음성 서비스를 지원하는 것을 포함할 수 있다.Voice and data communications from the MS 132 are split in a packet control unit (PCU), not shown, of the BSC 222. Voice communication passes through the MSC 180 while data communication passes through the SGSN 230. MSC 180 sets up the voice circuit over PSTN 290 using control communication over SS7 network 292. Control of these voice circuits may include supporting prepaid voice services serviced over the SS7 network to determine whether MSC 180 access is in the right balance for the call with the user.

MSC(180)는 음성 통신 서비스를 제공할 때 다수의 서버와 통신한다. 이들은 선불 서버(212), 홈 로케이션 레지스터(home location register: HLR)(214), 방문자 로케이션 레지스터(visitor location register: VLR)(216), 및 로케이션 서버(218)를 포함한다.The MSC 180 communicates with a number of servers when providing voice communication services. These include a prepaid server 212, a home location register (HLR) 214, a visitor location register (VLR) 216, and a location server 218.

데이터 통신은 BSC(222)와 SGGN(230) 사이를 통과한다. 일반적으로 SGSN(230)은 다수의 BSS(220)를 지원하고, 각각의 BSS(220)는 하나의 SGSN(230)에 접속된다. 각각의 SGSN(230)은 SGSN과 GGSN 노드를 연관시키는 사설 데이터 네트워크가 일반적인 GBN(GPRS Backbone Network)(240)을 통해 GGSN(250)과 통신한다.Data communication passes between the BSC 222 and the SGGN 230. In general, SGSN 230 supports multiple BSSs 220, and each BSS 220 is connected to one SGSN 230. Each SGSN 230 communicates with the GGSN 250 via a common GPRS Backbone Network (GBN) 240 where a private data network that associates the SGSN with the GGSN nodes.

사용자가 MS(132)로부터 데이터 통신 설정을 원하는 경우, 사용자는 MS(132)에 의하여 송신된 요구를 초기화하여 이를 데이터 네트워크에 부착시킨다. 상기 요구는 BSS(220)에 의하여 수신된 다음, SGSN(230)으로 송신된다. SGSN(230)은 MS 식별, 일반적으로 IMSI(International Mobile Subscriber Identity)를 수신하고 사용자를 인증한다. MS는 SGSN이 인터넷 프로토콜 어드레스를 식별하거나 또는 동적으로 할당된 어드레스를 필요로 함을 나타내는 PDP(Packet Data Protocol) 내용을 작성하도록 요구한다. SGSN은 상기 요구를 GGSN에 전송하고, 상기 GGSN은 데이터 통신 링크를 작성하고 MS와 외부 네트워크 사이의 통신을 위한 게이트웨이로서 작용한다. MS는 특정의 네트워크와의 접속을 요구할 수 있다. 상기 예에서, MS는 공중 인터넷과의 접속을 요구하는 것으로 생각된다. PDP 내용이 설정된 후, MS는 게이트웨이 기능을 외부 네트워크에 제공하는 가상 링크를 이 가상 링크와 GGSN 사이에 갖는다.If the user wants to establish data communication from the MS 132, the user initiates and attaches the request sent by the MS 132 to the data network. The request is received by the BSS 220 and then sent to SGSN 230. SGSN 230 receives the MS identification, typically the International Mobile Subscriber Identity (IMSI), and authenticates the user. The MS requires the SGSN to write Packet Data Protocol (PDP) content indicating that it needs an Internet Protocol address or needs a dynamically assigned address. SGSN sends the request to GGSN, which creates a data communication link and acts as a gateway for communication between the MS and the external network. The MS may require a connection with a particular network. In the above example, the MS is considered to require a connection with the public internet. After the PDP content is set, the MS has a virtual link between this virtual link and the GGSN that provides gateway functionality to the external network.

PDP 컨텍스트을 설정하는 도중에, GGSN(250)은 RADIUS 서버와 같은 인증 서버(275)와 통신한다. MSSP(260)는 인증 서버와의 인터체인지를 검출 및 모니터링한다. 모니터링된 정보를 사용하여, MSSP(260)는 MS(132)의 아이덴티티와 인터넷을 통한 통신을 위하여 사용자에 의하여 사용된 IP 어드레스 사이의 매핑을 결정한다. 다른 실시예, 즉 인증이 MSSP를 통과하는 통신을 사용하여 실행되지 않는 경우에, MSSP(260)는 SS7 네트워크(292)를 통한 외부 정보의 매핑을 얻는다. 예를 들면, MSSP(260)는 SS7 네트워크을 통해 통신하여 MSC(180)에 의하여 사용되는 서버(212-218)로부터 정보를 얻을 수 있다.During the establishment of the PDP context, GGSN 250 communicates with an authentication server 275, such as a RADIUS server. MSSP 260 detects and monitors the interchange with the authentication server. Using the monitored information, MSSP 260 determines the mapping between the identity of MS 132 and the IP address used by the user for communication over the Internet. In another embodiment, that is, if authentication is not performed using communication passing through the MSSP, the MSSP 260 obtains a mapping of external information over the SS7 network 292. For example, MSSP 260 may communicate over an SS7 network to obtain information from servers 212-218 used by MSC 180.

SGSN(230) 및 GGSN(250) 양자 모두는 CDR의 일부 처리 및 매칭을 실행하고 요금부과 정보를 요금 부과 노드(270)에 보내는 요금부과 게이트웨이(272)로 통과하는 MS(130) PDP 컨텍스트에 관한 통화 상세 기록(CDR)를 작성한다. 일반적으로, SGSN(230)은 MS(132)와 GGSN(250) 사이의 가상 데이터 링크의 무선 부분에 관한 정보를 수집한다. 예를 들면, SGSN은 총 접속 기간 및 MS로 송수신된 데이터량을 수집한다. 일반적으로, GGSN(250)은 접속된 네트워크(예를 들면, 인터넷), PDP 컨텍스트의 기간, 및 외부 네트워크와 송수신된 데이터량을 포함하여 통신의 외부 네트워크 부분에 관한 정보를 수집한다.Both SGSN 230 and GGSN 250 relate to the MS 130 PDP context passing through the charging gateway 272 to perform some processing and matching of the CDRs and to send charging information to the charging node 270. Create a call detail record (CDR). In general, SGSN 230 collects information about the wireless portion of the virtual data link between MS 132 and GGSN 250. For example, SGSN collects the total connection duration and the amount of data sent and received by the MS. In general, GGSN 250 collects information about the external network portion of the communication, including the connected network (eg, the Internet), the duration of the PDP context, and the amount of data transmitted and received with the external network.

MS(132)가 GGSN(250)와 가상 데이터 링크를 형성한 후, MS(132)는 인터넷(140)과 통신을 초기화할 수 있다. 예를 들면, MS(260)는 텍스트식 호스트 네임을 숫자 어드레스로 번역하는 인터넷(140) 상의 컴퓨터인 도메인 네임 서버(DNS)와의 접속을 먼저 시도할 수 있다. MSSP(260)는 초기 번역 요구는 물론 응답을 검출한다.After the MS 132 establishes a virtual data link with the GGSN 250, the MS 132 may initiate communication with the Internet 140. For example, MS 260 may first attempt a connection with a domain name server (DNS), a computer on the Internet 140 that translates a textual host name into a numeric address. MSSP 260 detects the response as well as the initial translation request.

MSSP(260)는 각각의 MS(132)와 인터넷(140) 상의 호스트 사이의 모든 통신을모니터링한다. MSSP(260)는 소스 IP 어드레스에 따라 각 패킷의 소스 MS를 식별한다. 상기 통신을 모니터링하는 도중에, MSSP(260)는 요금부과 노드(270)로 보내지는 다수의 상세 기록을 발생시킨다. 사용자 IP 어드레스를 IMSI로 번역함으로써, 이들 상세 기록는 추가 번역을 할 필요없이 사용자의 IMSI, MSDN, 또는 양자 모두를 직접 식별한다.MSSP 260 monitors all communication between each MS 132 and a host on the Internet 140. MSSP 260 identifies the source MS of each packet according to the source IP address. While monitoring the communication, MSSP 260 generates a number of detailed records that are sent to billing node 270. By translating the user IP address into IMSI, these detailed records directly identify the IMSI, MSDN, or both of the user without the need for further translation.

MSSP(260)가 MS(132)와 인터넷 상의 목적지 사이 통신 세션의 특정 포인트를 검출할 때 요금부과 노드(270)로 보내지는 상세 기록를 발생한다. 상기 포인트, 즉 "검출 포인트"는 예를 들면 특정 컨텐츠 제공자로의 IP 플로의 초기화 또는 종료를 포함할 수 있다. 또한, 전술한 바와 같이, MSSP(260)는 IP 플로 및 연관된 프로토콜 스테이트 머신을 또한 제어한다. MSSP(260)는 MSSP에 연관된 별개의 컴퓨터인 관리 및 서비스 플랫폼(280)과 통신한다. 이들 서비스 플랫폼은 MSSP에 의하여 검출된 IP 플로 내의 이벤트가 취급되는 방법을 결정하는 서비스 논리를 실행한다. 이들 플랫폼 중 하나 이상의 플랫폼은 MSSP와 공동으로 위치되고, 도 1에 도시된 바와 같이 시스템 형성 MDSC(110)로 동작할 수 있다. MSSP(260)는, 예를 들면, 데이터 네트워크를 통해 외부 서비스 플랫폼(282)과 또한 통신할 수 있다. 예를 들면, 외부 서비스 플랫폼(282)은 컨텐츠 제공자(150) 또는 가상 운용자에 의하여 조작될 수 있다.When the MSSP 260 detects a particular point in the communication session between the MS 132 and a destination on the Internet, it generates a detailed record that is sent to the charging node 270. The point, i.e., the "detection point" may include, for example, the initialization or termination of an IP flow to a specific content provider. In addition, as discussed above, MSSP 260 also controls the IP flow and associated protocol state machine. MSSP 260 communicates with management and service platform 280, which is a separate computer associated with the MSSP. These service platforms execute service logic that determines how events in the IP flow detected by the MSSP are handled. One or more of these platforms are co-located with the MSSP and can operate as a system forming MDSC 110 as shown in FIG. 1. MSSP 260 may also communicate with external service platform 282 via, for example, a data network. For example, the external service platform 282 may be manipulated by the content provider 150 or the virtual operator.

MSSP(260)는 상세 기록를 발생할 시기, 및 서비스 플랫폼(280)으로부터 IP 플로 보류 지시를 차단할 시기를 결정하도록 구성될 수 있다. 상기 구성은 정적으로 공급될 수 있다. 또한, 상기 구성은 예를 들면 통신 세션을 처리하는 도중이나또는 외부 이벤트에 응답하여, MSSP에 의하여 지역으로 들어오는 사용자를 동적으로 형성하거나 또는 업데이트시킬 수 있다. MSSP는 로케이션 서버와의 링크를 통해 상기 정보를 선택적으로 얻을 수 있다.MSSP 260 may be configured to determine when to generate a detailed record and when to block an IP flow hold indication from service platform 280. The configuration can be supplied statically. In addition, the configuration may dynamically form or update a user entering the area by the MSSP, for example, while processing a communication session or in response to external events. The MSSP can optionally obtain this information through a link with a location server.

도 3을 참조하면, MSSP(260)는 세 개의 다른 계층으로 기술적으로 분할된다. 하드웨어 계층(310)은 이동 네트워크(110)와 인터넷(140) 사이를 통과하는 패킷을 고속으로 처리한다. 특정 패킷은 하드웨어 계층에서 추가적인 취급이 더 필요한 것으로 식별되고, 이들은 STL(Service Transport Layer)(320), 가능하게는 SLC(Service Control Layer)(330)에 의하여 취급된다. 하드웨어 계층(310)은 패킷을 처리하지 않을 때, 패킷을 버퍼링하여 패킷(일반적으로는 패킷 자체는 아님)에 관한 정보를 STL(320)에 송신하고, 패킷을 추가로 처리하기 전에 STL로부터 응답을 대기한다.Referring to FIG. 3, MSSP 260 is technically divided into three different layers. The hardware layer 310 processes the packets passing between the mobile network 110 and the Internet 140 at high speed. Certain packets are identified as requiring further handling at the hardware layer, and they are handled by a Service Transport Layer (STL) 320, possibly a Service Control Layer (SLC) 330. When the hardware layer 310 does not process the packet, it buffers the packet to send information about the packet (typically not the packet itself) to the STL 320 and sends a response from the STL before further processing the packet. Wait

하드웨어 계층(310)은 이동 네트워크(110) 및 인터넷(140)과 같은 외부 네트워크와의 물리적 데이터 통신 인터페이스는 물론 STL(320)과의 인터페이스를 실행한다. 하드웨어 계층은 소프트웨어의 도움이 필요없이 구성의 상위 계층으로부터 하드웨어 계층이 검출하는 IP 플로 특성에 따라 트리거 또는 이벤트 통지를 설정할 수 있는 성능을 또한 제공한다. 하드웨어 계층(310)은 사용자 및 애플리케이션마다 서비스 규정의 품질을 지원하도록 설계된다. 하드웨어 계층은 트리거 및 이벤트 처리를 할 수 있을 뿐만 아니라 플라이 상의 데이터를 실시간으로 분석하도록 심층 패킷 처리를 실행한다. 하드웨어 계층 내의 가상 출력 대기 시스템으로 인하여 IP 플로의 트래픽 세이핑 또는 폴리싱에 사용될 수 있는 미세한 제어가 가능하다. 하드웨어 계층은 SS7 접속성을 또한 제공한다.The hardware layer 310 implements an interface with the STL 320 as well as a physical data communication interface with an external network such as the mobile network 110 and the Internet 140. The hardware layer also provides the ability to set trigger or event notifications depending on the IP flow characteristics that the hardware layer detects from the upper layers of the configuration without the need for software. The hardware layer 310 is designed to support the quality of service provision for each user and application. In addition to trigger and event processing, the hardware layer performs deep packet processing to analyze data on the fly in real time. The virtual output queuing system in the hardware layer allows fine control that can be used for traffic shaping or polishing of IP flows. The hardware layer also provides SS7 connectivity.

STL(320)은 MSSP의 입출력 포트 사이로 패킷 트래픽의 루트를 정하는데 사용되는 하드웨어 리소스를 관리할 뿐만 아니라 데이터 플로 및 트리거와 검출 이벤트의 설정을 제어하는 각종 하드웨어 레지스터를 조종할 수 있다. STL(320)은 하드웨어 계층으로부터 수신하는 정보를 직접 처리하고 패킷 처리 방법을 하드웨어 계층에 알려 주거나, 또는 패킷에 관한 정보를 제3 계층, SLC 계층(330)으로 보낸다.The STL 320 not only manages hardware resources used to route packet traffic between input and output ports of the MSSP, but can also manipulate various hardware registers that control data flow and the setting of triggers and detection events. The STL 320 directly processes the information received from the hardware layer and informs the hardware layer how to process the packet, or sends information about the packet to the third layer, the SLC layer 330.

STL(320)은 가입자 세션 관련 SCL(330)에서 발생된 요구 및 검출 포인트 통지 요구를 처리할 수 있다. STL(320)은 패킷을 IP 네트워크 상으로 루트를 정하는데 사용된 IP 루팅 엔진을 또한 실행한다. STL(320)은 세션 이벤트를 검출하여 SCL에 통지한다. STL은 하드웨어 계층(310)을 제어하고, 이로써 패킷 플로가 취급되는 방법을 결정한다. STL은 트리거 및 이벤트 검출 포인트 및 레지스터 이벤트 통지 양자 모두를 구비하는데 사용되는 하드웨어 레지스터를 관리할 수 있다.STL 320 may process requests generated in subscriber session related SCL 330 and detection point notification requests. STL 320 also executes the IP routing engine used to route packets onto the IP network. STL 320 detects the session event and notifies the SCL. STL controls hardware layer 310, thereby determining how packet flows are handled. The STL may manage hardware registers used to have both trigger and event detection points and register event notifications.

STL(330)은 관리 및 서비스 플랫폼(280)과의 인터페이스를 제공하고, STL(320)과의 임시 서비스 및 인터페이스와 연관된 서비스 논리를 실행하여 MSSP(260)를 통과하는 데이터의 하드웨어 계층 처리를 제어한다. SCL은 각각의 APL 실행에 필요한 인터페이스 논리 및 스테이트 머신을 실행한다. 애플리케이션은 검출 포인트, 모니터 접속 상태, 및 루트 서비스 요구를 설정하도록 API에 등록된다. SCL 계층은 검출 포인트 및 이벤트 모니터링이 가능하도록 API 요구를 확인하고 STL 요구로 번역한다.STL 330 provides an interface with management and service platform 280, and executes service logic associated with interim services and interfaces with STL 320 to control hardware layer processing of data passing through MSSP 260. do. The SCL executes the interface logic and state machine required to run each APL. The application is registered with the API to set the detection point, monitor connection status, and root service request. The SCL layer identifies the API request and translates it into an STL request to enable detection points and event monitoring.

STL(320)은 사용자 세션(즉, PDP 컨텍스트) 및 TCP 세션과 같은 상이한 통신IP 대화를 전체 사용자 세션 내에서 처리한다. STL(330)은 가입자 데이터 패킷을 처리 및 검사하고, 여러 가지 유형의 플로 및 검출 포인트를 실행한다. STL(320)은 어드레스 번역, 패킷 필터, 터널 플로, 및 통제 플로를 지원한다. 또한, STL은 패킷은 물론 임의의 소정 플로에 포함되는 송수신된 바이트를 계산한다. STL은 플로 상의 검출 포인트를 실행한다. 검출 포인트는 개별 플로 유형에 좌우될 수 있고, 프로토콜 계층(2 내지 7)을 사용하여 정해진 패턴에 좌우될 수 있다. STL은 카운터값 상의 임계치에 따라 검출 포인트를 설정할 수 있는 성능을 제공하고, 예를 들면 매 10kB의 데이터가 전송되도록 검출 포인트를 설정한다.STL 320 handles different communication IP conversations, such as user sessions (ie, PDP contexts) and TCP sessions, within the entire user session. STL 330 processes and inspects subscriber data packets and executes various types of flow and detection points. STL 320 supports address translation, packet filters, tunnel flows, and control flows. In addition, the STL calculates the transmitted and received bytes included in the packet as well as any predetermined flow. STL executes detection points on the flow. The detection point may depend on the individual flow type and may depend on the pattern determined using the protocol layers 2 to 7. The STL provides the ability to set the detection point according to the threshold on the counter value, and sets the detection point so that, for example, every 10 kB of data is transmitted.

STL(320)은 소정 세트의 세션 그룹마다 IP 어드레스/포트 번호를 한정할 수 있다. 상기 성능은 패킷-필터링 서비스 및 네트워크 베이스 방화벽을 구성하도록 SCL에 의하여 사용될 수 있다.STL 320 may define an IP address / port number for each set of session groups. This capability can be used by the SCL to configure packet-filtering services and network-based firewalls.

또한, STL(320)은 패킷 미팅 기준을 미리 구성된 터널에 보낼 수 있다. 기준은 IP 헤더 및 전송 계층 헤더 특성에 좌우된다. 이들 플로는 VPN 성능을 구성하도록 SCL에 의하여 사용될 수 있다.STL 320 may also send packet meeting criteria to a preconfigured tunnel. The criteria depends on the IP header and transport layer header characteristics. These flows can be used by the SCL to configure VPN performance.

SCL(330)은 서비스 플랫폼(280)과의 인터페이스와 같은 각종의 외부 MSSP 인터페이스를 지원한다. SLC(330)는 인터페이스 논리 및 각각의 APL 실행에 사용되는 스테이트 머신을 또한 실현한다. SCL은 예를 들면 SS7 네트워크를 통해 통신하여 가입자에 관한 정보를 얻을 수 있다. 서비스 플랫폼 상에서 실행되는 애플리케이션은 검출 포인트, 모니터 접속 상태, 및 루트 서비스 요구를 설정하도록 API에 등록한다. SCL(330)은 애플리케이션으로부터 API 요구를 확인하고 이들을 STL 요구로 번역하여 필요한 경우 STL(320)로 통과시켜 검출 포인트 및 이벤트 모니터링을 요청 및 통지할 수 있다. SCL(330)은 MSSP 구성 데이터베이스 및 IPDR(IP Detail Record) 데이터베이스를 또한 내장할 수 있다. SCL(330)은 제공 및 오류 관리를 위하여 외부 네트워크 관리 시스템과의 인터페이스를 제공한다. SCL은 요금 부과 노드로 전송되는 요금 부과 또는 서비스 요구 전략을 위한 IPDR을 발생하도록 STL(320), 서비스 플랫폼(280) 상에서 실행되는 외부 애플리케이션, 및 API 스테이트 머신으로부터 데이터를 서비스 요구마다 수집한다.SCL 330 supports various external MSSP interfaces, such as interface with service platform 280. SLC 330 also implements the interface logic and state machines used to execute each APL. The SCL can, for example, communicate over an SS7 network to obtain information about the subscriber. An application running on the service platform registers with the API to set the detection point, monitor connection status, and root service request. SCL 330 may identify API requests from applications, translate them into STL requests, and pass them to STL 320 as needed to request and notify detection points and event monitoring. SCL 330 may also embed an MSSP configuration database and an IP Detail Record (IPDR) database. SCL 330 provides an interface with an external network management system for provision and error management. The SCL collects data per service request from the STL 320, external applications running on the service platform 280, and API state machines to generate IPDRs for charging or service request strategies sent to the billing node.

도 4를 참조하면, SCL(330)은 서비스 관리 및 모니터링 관련 모듈 및 준비된 서비스 논리 실행 관련 모듈을 포함한다.Referring to FIG. 4, the SCL 330 includes a service management and monitoring related module and a prepared service logic execution related module.

SCL에는 구성 데이터베이스(432) 및 상세 기록 데이터베이스(434)가 내장될 수 있다. SCL은 준비 및 오류 관리를 위해 외부 네트워크 관리 시스템과 인터페이스로 또한 접속된다. SCL은 요금부과 또는 서비스 요구 전략을 위한 DR(Detail Record)을 발생하도록 STL, 외부 애플리케이션, 및 API 스테이트 머신으로부터 매 서비스 요구마다 데이터를 수집한다.The SCL may contain a configuration database 432 and a detailed record database 434. SCL is also interfaced with an external network management system for preparation and error management. The SCL collects data for every service request from the STL, external applications, and API state machines to generate a detail record (DR) for the charging or service request strategy.

서비스 관리 프로그램(420)은 기능에 관련된 여러 가지 서비스를 관리할 뿐만 아니라 관리 기능을 실행하도록 코어에 인터페이스로 접속될 수 있다. 준비 서버, 네트워크 관리 서버, 요금부과 서버, 및 보고 서버를 포함하는 OAM&P(Operations Administration Maintenance and Provisioning) 서버(410)는 운용자 시스템과 서비스 관리 프로그램(420) 사이를 인터페이스로 접속시킨다. OAM&P 서버(410)는 서비스 관리 프로그램을 외부 고객과 단절시킬 뿐만 아니라 관리 리소스에 우선적으로 액세스하는데 필요한 구조를 제공한다.The service management program 420 may not only manage various services related to functions, but also may be interfaced to the core to execute management functions. An Operations Administration Maintenance and Provisioning (OAM & P) server 410, including a staging server, a network management server, a billing server, and a reporting server, interfaces between the operator system and the service management program 420. The OAM & P server 410 not only disconnects the service management program from external customers but also provides a structure necessary for preferential access to management resources.

서비스 관리 프로그램(420)의 한 가지 특성은 특정 서비스를 형성 및 준비하도록 준비 애플리케이션으로부터의 요구에 응답하는 것이다. 서비스 관리 프로그램(420)은 서비스를 형성하고 상기 서비스 관련 정보를 구성 데이터베이스(432) 내에 기억한다. 서비스 관리 프로그램(420)은 서비스 가능하도록 SCL 코어(450)와 통신함으로써 상기 서비스에 대한 사용자 세션이 MSSP에 의하여 취급된다.One characteristic of the service management program 420 is to respond to requests from the preparation application to form and prepare a particular service. The service management program 420 forms a service and stores the service related information in the configuration database 432. The service management program 420 communicates with the SCL core 450 to be serviceable so that a user session for that service is handled by the MSSP.

준비 프로세스의 일부로서, 운용자는 서비스와 연관된 하나 이상의 가입자 그룹을 또한 식별할 수 있다. 가입자 그룹은 권한 또는 속도 플랜에 의하여 사용자를 그룹으로 지정하는데 사용될 수 있다. 가입자 그룹은 요금 부과 또는 네트워크 액세스를 위하여 공동 재산을 공유하는 하나 이상의 사용자를 구성할 수 있다. 사용자는 하나 이상의 활성 플로를 갖는 패킷 변환 네트워크와의 세션을 갖는 개별 가입자를 구성한다. 후속하는 서브섹션은 이들 개념 각각을 보다 상세하게 검사한다. 가입자는 MSSP에 개별적으로 준비될 필요는 없다.As part of the preparation process, the operator may also identify one or more subscriber groups associated with the service. Subscriber groups can be used to group users by authority or speed plan. A subscriber group can organize one or more users sharing common property for billing or network access. The user configures an individual subscriber having a session with a packet translation network having one or more active flows. Subsequent subsections examine each of these concepts in more detail. The subscriber does not need to be prepared separately for the MSSP.

서비스 관리 프로그램(420)은 서비스 대화의 모니터링 및 제어의 실시간 양태를 일반적으로 제어하는 SCL 코어(450)와 통신한다. SCL 코어(450)는 SCL 소프트웨어 구성의 중앙 런타임 구성 부품이다. SCL 코어는 보류 메세시의 순서가 서비스되는 이벤트 베이스 실행 환경을 제공한다. SCL 코어는 메세지 처리에 대하여 시퀀서로 작용하도록 스크립트를 사용한다. 스크립트는 컴파일 코드와 링크된 통화 리스트로서 작용하여 바람직한 성능 특성을 가질 뿐만 아니라 특정 시스템 논리에 대하여 상당한 정도의 융통성을 유지한다. SCL 코어에 의하여 처리된 일부 메세지는 MSSP를 통과하여 흐르는 데이터 내에서 검출된 검출 포인트와 연관된다. 메세지 처리 시, SCL 코어(450)는 메시지와 연관된 스크립트를 실행한다. 일반적으로 스크립트 실행은 원격 서버에 요구할 때 중단되고, 응답 및 확인을 필요로 한다. 중단된 스크립트는 추후에 스크립트를 원래 차단시켰던 원격 서버가 응답 및 확인을 제공할 때 다시 실행한다. 중단된 다른 메세지는 스크립트에 의하여 처리된다.The service management program 420 communicates with the SCL core 450, which generally controls the real-time aspects of monitoring and controlling service conversations. SCL core 450 is the central runtime component of the SCL software configuration. The SCL core provides an event base execution environment in which the order of pending messages is serviced. The SCL core uses a script to act as a sequencer for message processing. The script acts as a list of currencies linked with the compiled code and not only has desirable performance characteristics, but also maintains a great deal of flexibility with respect to specific system logic. Some messages processed by the SCL core are associated with detected points detected in the data flowing through the MSSP. In processing a message, the SCL core 450 executes a script associated with the message. Typically, script execution stops when it asks the remote server, and requires a response and confirmation. The aborted script is run again when the remote server that originally blocked the script provides a response and confirmation. Other messages that were aborted are handled by the script.

SCL 코어(450)는 STL 서버(460)를 STL(320)과의 인터페이스로서 사용하고, API 서버(440)를 MSSP 외부의 서비스 플랫폼 상에서 실행되는 애플리케이션과의 인터페이스로서 사용한다.SCL core 450 uses STL server 460 as an interface with STL 320 and API server 440 as an interface with an application running on a service platform outside of the MSSP.

SCL 코어(450)는 시스템 성능의 통계치를 계산할 뿐만 아니라 상세 기록의 발생을 지원한다. 이들 통계치는 실행 환경에서 실행되는 스크립트 제어로 업데이트된다. 주기적으로, SCL 코어(450)는 이들 계산된 통계치를 서비스 관리 프로그램(420)으로 보내고, 이 프로그램은 얻어진 통계치를 연산하도록 이들 통계치를 사용한다. 서비스 관리 프로그램(420)은 SCL 코어(450)로부터 수신된 정보에 따라 시스템 성능 통계치를 계산한다.SCL core 450 not only calculates statistics of system performance, but also supports the generation of detailed records. These statistics are updated with script control running in the execution environment. Periodically, the SCL core 450 sends these calculated statistics to the service management program 420, which uses these statistics to compute the obtained statistics. The service management program 420 calculates system performance statistics according to the information received from the SCL core 450.

특정하게 제공된 서비스에 대한 서비스 논리를 실행하는 스크립트는 다수의 각기 다른 데이터 플로를 제어할 수 있다. 플로는 MSSP를 통하는 패킷 데이터의 이동을 나타내는데 사용되는 추상화이다. 사용자는 컨텍스트 상에 다수의 활성 플로를 하나의 세션으로 가질 수 있다. 플로는 성질이 동적이고, 사용자가 각종의 서비스를 제공하는 네트워크 리소스와 대화할 때 셋업 및 찢어지는 것이 일반적이다. 하나의 플로는 단일 서비스의 컨텍스트 상 하나의 사용자에 속한다. 또한, 플로는 사용자가 하나의 운용자 가입자 베이스에 속하기 때문에 특정의 운용자에 간접적으로 속하는 것으로 또한 생각될 수 있다. 사용자는 상이한 서비스에 속하는 동시에 활성적인 다수의 플로를 가질 수 있다는 점에 유의해야 한다. 예를 들면, 사용자는 특정의 서비스를 각각 실행하는 상이한 웹 사이트를 브라우징하는 무선 장치 상에 개방된 다수의 창을 가질 수 있다.A script that executes service logic for a particular provided service can control a number of different data flows. Flow is an abstraction used to represent the movement of packet data through an MSSP. The user can have multiple active flows in one session on the context. Flows are dynamic in nature and are typically set up and torn when users interact with network resources that provide various services. One flow belongs to one user in the context of a single service. In addition, a flow can also be considered to belong indirectly to a particular operator because the user belongs to one operator subscriber base. It should be noted that a user can have multiple flows that belong to different services and are active at the same time. For example, a user may have multiple windows open on a wireless device that browses different web sites each executing a particular service.

SCL 코어(450)는 각각의 세션 미터 내에 더 모일 수 있는 각각의 플로 미터를 수집한다. 플로 상세 기록은 플로가 종료될 때 조건부로 기입될 수 있다. 플로의 부분적 또는 완전한 요약을 제공하도록 형성된 상세 기록은 흐름 상세 기록(flow detail record: FDR)으로 알려져 있다. 각각의 상세 기록은 순번을 포함하여 소정의 사용자 세션 또는 특정의 플로 컨텍스트 내에 기입된 순서에 대하여 기록이 순서대로 정렬될 수 있다.SCL core 450 collects each flow meter that can be further gathered within each session meter. Flow detail records can be conditionally written at the end of a flow. The detail record formed to provide a partial or complete summary of the flow is known as a flow detail record (FDR). Each detailed record may be ordered, including order, for the order in which it was written within a given user session or particular flow context.

SCL 코어(450)는 실시간 모니터링 데이터를 수신하도록 구성된 외부 프로세스에 분배를 위하여 서비스 관리 프로그램(420)에 송신된 실시간 통계치 세트를 제공한다. 코어에 의하여 송신된 실시간 통계치는 MSSP 구성에 따라 주기적으로 송신된다. 실시간 통계치는 각각의 운용자, 사용자 그룹 또는 서비스에 좌우될 수 있다.SCL core 450 provides a set of real-time statistics sent to service management program 420 for distribution to external processes configured to receive real-time monitoring data. Real-time statistics sent by the core are periodically sent according to the MSSP configuration. Real-time statistics may depend on each operator, user group or service.

SCL 코어(450)는 운용자 실시간 기록을 서비스 관리 프로그램에 주기적으로 송신하여 각각의 운용자에 따라 실시간 성능 메트릭을 제공한다. 실시간 기록은 메세지가 실행 환경 내에서 처리될 때 SCL 코어 내에서 실시간으로 연산되는 것이일반적이다. 구성가능한 주기 타이머는 실시간 데이터 요소를 패킹하는 실시간 데이터 배출 프로세스를 초기화하고, 분배 및 추가 연산을 위하여 이들을 서비스 관리 프로그램으로 전송한다. 서비스 실시간 기록 및 가입자 그룹 실시간 기록도 마찬가지로 SCL 코어로부터 주기적으로 전송되어 각각의 서비스마다 실시간 성능 메트릭을 제공한다. SCL(330)은 데이터가 다수의 레벨에서 캡처될 수 있도록 다수의 상세 기록 포맷을 지원한다. 이들에는 Application Detail Records, Service Detail Records, User Detail Records, 및 Flow Detail Records를 포함한다. 서비스 관리 프로그램은 시간 간격, 예를 들면, 5분, 한 시간 또는 하루 종일 간격에 대한 통계치를 연산하고, 이들 연산된 통계치를 보고 데이터베이스에 기입한다.SCL core 450 periodically sends an operator real-time record to the service management program to provide real-time performance metrics for each operator. Real time recordings are typically computed in real time within the SCL core when messages are processed within the execution environment. The configurable periodic timer initiates a real-time data ejection process that packs real-time data elements and sends them to the service management program for distribution and further computation. Service real-time records and subscriber group real-time records are likewise sent periodically from the SCL core to provide real-time performance metrics for each service. SCL 330 supports multiple detailed recording formats so that data can be captured at multiple levels. These include Application Detail Records, Service Detail Records, User Detail Records, and Flow Detail Records. The service management program calculates statistics for time intervals, for example 5 minutes, one hour or all day intervals, and reports these calculated statistics in a database.

SCL(330)은 서비스 논리를 실행하는 스크립트의 제어 하에 각각의 플로마다이벤트를 등록 및 보고할 수 있다. 서비스 애플리케이션이 통지 검출 포인트를 등록할 때 프로세스는 시작한다. 등록 프로세스는 실시간으로 흐름에 일치되는 패턴 세트를 설정하는 것을 포함한다. 일반적으로, 패턴은 계층(2-7)에서 사용되는 프로토콜의 제어 메세지로부터 키오프된다. 예를 들면, 개방 처리 중인 TCP 세션은 두 개의 호스트 사이에서 다수의 프로토콜 메세시를 교환한다. TCP 프로토콜 제어 메세지의 교환으로 인하여 플로 스테이트 머신이 접속 설정 상태를 통과할 수 있다. 검출 포인트의 개념은 상태 변환이 검출되고 외부 애플리케이션에 보고될 수 있는 장소로서 스테이트 머신 내에서 한 세트의 변환 식별을 시작한다. 검출 포인트는 조건과 일치되는 특정의 플로만이 외부 애플리케이션에 보고되도록 한 세트의 조건으로 추가로 한정될 수 있다. 실제로, 검출 포인트는 스테이트 머신 내의 특정 포인트 및 한 세트의 조건 변수의 조합이다. 이벤트 보고는 플로가 하나 이상의 검출 포인트를 통과하여 조건 파라미터와 만날 때 외부 애플리케이션을 통지하는 프로세스이다. 보고된 실제 이벤트는 실행되는 프로토콜의 함수이다. 이벤트 보고의 개념은 이들 유형의 프로토콜이 잘 형성된 스테이트 머신을 실행하기 때문에 일반적으로 접속 배향 프로토콜에 매우 유용하다. UDP와 같은 접속되지 않은 프로토콜 상의 이벤트 보고는 스테이트 머신이 보고 내용이 많기 때문에 일반적으로 매우 유용하지 않다. 수많은 경우에, 스테이트 머신은 UDP 상에 계층을 이루는 상위 레벨 프로토콜에서 실행된다. 상기 부류의 프로토콜 예는 WAP 1.0이다. WAP 스택은 스테이트 머신을 실행하는 UDP을 통해 애플리케이션 계층 프로토콜을 형성한다. 검출 포인트는 UDP 패킷 내에 포함된 애플리케이션 프로토콜 상에 형성될 수 있다.The SCL 330 may register and report an event for each flow under the control of a script that executes service logic. The process starts when the service application registers for notification detection points. The registration process involves establishing a set of patterns that match the flow in real time. In general, the pattern is keyed off from the control message of the protocol used in layers 2-7. For example, an open TCP session exchanges multiple protocol messages between two hosts. The exchange of TCP protocol control messages allows the flow state machine to pass through the connection setup state. The concept of detection points initiates a set of transform identifications within the state machine as where state transitions can be detected and reported to an external application. The detection point may be further limited to a set of conditions such that only certain flows that match the condition are reported to the external application. In practice, a detection point is a combination of a particular point in a state machine and a set of condition variables. Event reporting is the process of notifying external applications when a flow passes through one or more detection points and encounters a condition parameter. The actual event reported is a function of the protocol being executed. The concept of event reporting is generally very useful for connection orientation protocols because these types of protocols run well-formed state machines. Event reporting on disconnected protocols, such as UDP, is generally not very useful because the state machine reports a lot. In many cases, the state machine runs on a higher level protocol layered over UDP. An example of this class of protocol is WAP 1.0. The WAP stack forms an application layer protocol over UDP running the state machine. The detection point may be formed on an application protocol included in the UDP packet.

요구 검출 포인트는 애플리케이션이 세션을 제어하는 한편 플로의 데이터 통신이 중단된 포인트일 수 있다. 애플리케이션은 접속 셋업 또는 프로토콜 처리에 포함되고자 하는 전략 포인트에 요구 검출 포인트를 등록하는 것이 일반적이다. 플로 패스 내의 패킷이 검출 포인트와 연관된 모든 조건 파라미터와 일치될 때, 플로 처리는 중단되고 이벤트 메세지가 검출 포인트를 설정하는 애플리케이션에 전송된다. 애플리케이션은 플로의 디폴트 취급을 변경시키도록 작용할 수 있다. 변경은 접속 요구를 상이한 목적지 어드레스로 전환하거나 또는 접속을 완전하게 종료시키는 것을 포함할 수 있다. 애플리케이션은 접속 요구가 네트워크를 통해 루트가 정해지는 방법을 결정할 수 있는 성능은 물론 요금계산 또는 보안을 위하여 플로 또는 세션 파라미터를 구성할 수 있는 상능을 갖는다. 애플리케이션은 요구 이벤트에 대하여 적시에 응답해야 한다. 그렇지 않으면 불필요한 지연을 발생시키거나 상당히 오래 대기할 수 있다. 애플리케이션이 타임아웃 기간(구성가능) 내에 요구 이벤트에 대한 응답을 못하는 경우, 중단된 플로는 재시작하고 서비스를 위해 구성된 디폴트 작용이 실행된다, 요구 검출 포인트로 인하여 애플리케이션이 플로를 선택적으로 방해하여 서비스가 제공 방법을 결정하는 서비스 논리를 실행한다. 요구 검출 포인트는 접속 배향 프로토콜에 가장 유용하지만, 이들은 DNS, DHCP, 또는 RADIUS와 같은 비접속 배향 프로토콜에도 적용될 수 있다. 이들 프로토콜에 있어서, 요구 검출 포인트는 요구를 방해 및 서버하는데 사용될 수 있을 뿐만 아니라, 응답을 MSSP 외부에 가동되는 애플리케이션과 동기화시키는데 사용될 수 있다. 요구 검출 포인트는 애플리케이션에 통지하고 명령을 MSSP에 전송하여 인증 응답으로 복귀되기 전에 플로에 대한 필터를 구성할 수 있기 때문에 RADIUS 인증 요구의 응답에 유용할 수 있다. 상기 시퀀스는 적절한 필터가 시작부터 플로에 확실하게 적용될 수 있다. 두 가지 유형의 검출 포인트(요구 및 통지)는 상보적인 방식으로 동시에 사용되어 애플리케이션이 대화를 제어 및 모니터링할 수 있다는 점에 유의해야 한다.The request detection point may be the point at which the application controls the session while the flow of data communication is interrupted. It is common for an application to register a request detection point with a strategy point to be included in connection setup or protocol processing. When a packet in a flow path matches all of the condition parameters associated with the detection point, the flow process stops and an event message is sent to the application setting the detection point. The application can act to change the default handling of the flow. The change can include switching the connection request to a different destination address or terminating the connection completely. The application has the ability to determine how the connection request is routed through the network, as well as the ability to configure flow or session parameters for billing or security. The application must respond in time to the request event. Otherwise, you may incur unnecessary delays or wait significantly longer. If the application fails to respond to the request event within the timeout period (configurable), the suspended flow restarts and the default action configured for the service is executed.The request detection point causes the application to selectively interrupt the flow so that the service Implement the service logic to determine how to provide. Request detection points are most useful for connection orientation protocols, but they can also be applied to connectionless orientation protocols such as DNS, DHCP, or RADIUS. In these protocols, request detection points can be used to interrupt and server requests, as well as to synchronize responses with applications running outside the MSSP. The request detection point can be useful for responding to RADIUS authentication requests because it can configure the filter for the flow before notifying the application and sending a command to the MSSP to return to the authentication response. The sequence can be reliably applied to the flow from the start with the appropriate filter. It should be noted that both types of detection points (request and notification) can be used simultaneously in a complementary manner, allowing the application to control and monitor the conversation.

TCP Open 상의 요구 검출 포인트 예는 애플리케이션이 목적지 어드레스를 공급하고 세션이 성공적으로 설정되거나 또는 설정될 수 없기 때문에 세션이 실패할 때까지 이벤트 보고를 수신하도록 요청하는 것이다.An example of a request detection point on TCP Open is to request that an application supply a destination address and receive an event report until the session fails because the session cannot or cannot be established successfully.

검출 포인트는 요구 검출 포인트, 또는 통지 검출 포인트로 등록될 수 있다.플로가 요구 검출 포인트와 마주칠 때, 패킷 전송은 멈추고 SCL Core에 통지된다. 서비스 논리로부터의 응답이 진행할 방법을 STL에 지시하고, 따라서 플로 내 패킷이 전달된다. 검출 포인트가 통지 검출 포인트로 등록된 경우, 이벤트는 통지 검출 포인트가 등록되었을 때 정해진 조건과 플로 내 패킷이 일치되는 경우에 대하여 전송된다. 검출 포인트 조건 스트링은 광범위한 매칭값을 지정하는데 사용될 수 있는 와일드카드 카드 캐릭터를 포함할 수 있다. 등록 요구를 수신할 때 STL은 검출 포인트를 설치하고 등록 작업이 성공했음을 나타내는 확인을 전송한다.The detection point may be registered as a request detection point or a notification detection point. When the flow encounters the request detection point, packet transmission stops and is notified to the SCL Core. Instructs the STL how the response from the service logic will proceed, thus forwarding the packet in the flow. When a detection point is registered as a notification detection point, an event is sent for the case where the condition defined when the notification detection point is registered and the packet in the flow match. The detection point condition string may include wildcard card characters that can be used to specify a wide range of matching values. On receiving the registration request, the STL installs a detection point and sends a confirmation indicating that the registration operation was successful.

STL로 인하여 애플리케이션이 필터를 지정하여 세션(사용자) 상의 플로 또는 각각의 플로마다 적용할 수 있다. 상기 기능성은 가입자가 자신들의 가입에 관한 사이트에만 액세스할 수 있는 가입식 모델을 강요하는 월 가든을 형성하는데 사용될 수 있다. 또한, 상기 기능성은 네트워크 상주 방화벽을 형성하는데 사용될 수 있다. 기능성은 가입자가 유료 시청을 신청하는 경우 애플리케이션은 개별 가입자에게 적용된 필터를 업데이트하여 가입자가 계약 기간 동안 기능성에 액세스할 수 있도록 동적으로 적용될 수 있다. 필터링 특성의 동적 성질은 API를 사용하는 미디어 게이트웨이에 의하여 다이내믹 포트 상의 구멍을 명령에 따라 개방시키는데 사용될 수 있다. 따라서, 운용자는 캐리어 네트워크 상에서는 단지 허가된 스트리밍 트래픽만이 허용됨을 확실하게 할 수 있다. 이것은 스태틱 액세스 리스트가 패킷 필터링을 관리하도록 형성될 수 있는 일반적인 IP 루터와는 반대이다. MSSP로 인하여 상기 기능성은 하드웨어 및 내장된 소프트웨어에 의하여 스태틱 리스트의 사용자 또는 애플리케이션 서버 소프트웨어의 사용자가 접근하는 것 보다 더 효과적으로 실행될 수 있다. MSSP 액세스는 각각의 플로마다 구성가능 하지만, 액세스 리스트는 각각의 사용자 또는 세션마다 제어될 수 있다.STL allows an application to specify a filter and apply it to each flow or flow on the session (user). The functionality can be used to form a wall garden that enforces a subscription model where subscribers can only access sites about their subscriptions. In addition, the functionality can be used to form a network-resident firewall. Functionality can be dynamically applied so that when a subscriber subscribes to paid viewing, the application updates the filter applied to an individual subscriber so that the subscriber can access the functionality for the duration of the contract. The dynamic nature of the filtering feature can be used to commandly open a hole on the dynamic port by a media gateway using an API. Thus, the operator can ensure that only authorized streaming traffic is allowed on the carrier network. This is in contrast to typical IP routers, where static access lists can be configured to manage packet filtering. The MSSP allows the functionality to be performed more effectively than by the users of the static list or the users of the application server software by hardware and embedded software. MSSP access is configurable for each flow, but the access list can be controlled for each user or session.

MSSP로 인하여 애플리케이션이 VPN 및 시스템 내의 VPN을 통해 발송된 플로를 관리할 수 있다. 인터넷 및 네트워크 보안 공격의 범위가 광범위해 가고 있기 때문에 VPN의 사용이 증가되고 있다. MSSP는 클라이언트 초기화 VPN 및 NAS-Initiated(Network Access Server) VPN을 지원할 수 있다. MSSP는 각각의 VPN 유형을 구성하는 성능을 제공하고, 애플리케이션이 VPN이 언제 설정되고 어떤 트래픽이 상기 설정된 VPN을 통해 발송되는 가를 제어하도록 할 수 있다. 또한, MSSP는 사용자 클라이언트로부터 원격 인터넷 단말 포인트까지 MSSP를 간단하게 통과하는 상기 VPN을 누산할 수 있다.MSSPs allow applications to manage flows sent through VPNs and VPNs within the system. The use of VPNs is increasing because of the wide range of Internet and network security attacks. The MSSP can support client initiated VPNs and NAS-Initiated (Network Access Server) VPNs. The MSSP provides the capability to configure each type of VPN and allows the application to control when the VPN is set up and what traffic is sent over the set up VPN. In addition, the MSSP may accumulate the VPN simply passing through the MSSP from the user client to the remote Internet terminal point.

애플리케이션은 검출 포인트 클래스, 검출 포인트, 및 애플리케이션과의 제어 대화를 형성하기 위하여 반드시 존재해야 하는 조건을 확인함으로써 검출 포인트와 연관된다. 상기 검출 포인트는 IDP(Initial Detection Point)를 호출한다. 소정의 조건 기준과 일치되지 않는 스테이트 머신을 통과하는 트래픽은 영향을 받지 않는다. 조건이 소정의 기준과 일치될 때, 제어 대화가 스테이트 머신과 애플리케이션 사이에 형성되고, 애플리케이션에는 이벤트가 통지된다.The application is associated with the detection point by identifying the detection point class, the detection point, and the conditions that must exist to form a control conversation with the application. The detection point calls an Initial Detection Point (IDP). Traffic passing through a state machine that does not meet certain condition criteria is not affected. When the condition matches a predetermined criterion, a control conversation is established between the state machine and the application, and the application is notified of the event.

검출 포인트가 이벤트 보고만 제공하도록 준비되었을 때, 제어 대화는 이벤트 통지를 전송하기에 충분할 만큼 길고, 스테이트 머신에 의한 패킷 처리는 방해받지 않고 계속된다. 검출 포인트가 트리거로서 제공되었을 때, 제어 대화는 이벤트 보고 후 지속되고, 스테이트 머신에 의한 패킷 처리는 애플리케이션으로부터 응답을 받을 때까지 중단된다. 트리거로 인하여 애플리케이션이 스테이트 머신에 의하여 결정된 후속 제어 판단에 영향을 미칠 수 있다.When the detection point is ready to provide only event reporting, the control conversation is long enough to send an event notification, and packet processing by the state machine continues uninterrupted. When a detection point is provided as a trigger, the control conversation continues after the event report, and packet processing by the state machine is suspended until it receives a response from the application. The trigger can cause the application to influence subsequent control decisions made by the state machine.

패킷이 검출 포인트에서 중단되었을 때, 애플리케이션은 상이한 방식으로 응답한다. 이로써 패킷 처리가 스테이트 머신 상의 임의의 제어에 영향을 미치지 않고 간단하게 재개될 수 있다. 이러한 유형의 응답은 Continue라고 한다. 다른 가능한 응답은 Release라고 하며, 이것은 스테이트 머신의 패킷 추가 처리를 중지시킬 수 있다. 또한, 애플리케이션은 접속 응답을 사용함으로써 패킷에 대한 새로운 목적지를 제공할 수 있다. 최종적으로, 애플리케이션은 제어 응답을 사용함으로써 스테이크 머신의 패킷 추가 처리에 있어서 스테이트 머신 제어를 제공할 수 있다. 제어 대화는 추가 이벤트 보고가 요구되었을 때 애플리케이션이 단지 트리거 응답을 제공한 후 계속된다.When a packet is dropped at the detection point, the application responds in a different way. This allows packet processing to be simply resumed without affecting any control on the state machine. This type of response is called Continue. Another possible response is called Release, which can stop the state machine from adding packets. The application can also provide a new destination for the packet by using the connection response. Finally, the application can provide state machine control in packet addition processing of the stake machine by using the control response. The control conversation continues only after the application provides a trigger response when additional event reporting is requested.

또한 애플리케이션은 스테이트 머신의 동일한 실행 컨텍스트에서 다른 검출 포인트로부터 이후의 이벤트 보고를 요구하도록 IDP에 의하여 생성되는 제어 대화를 사용할 수 있다. 이벤트 검출 포인트는 연속 및 연결 트리거 응답과 관련하여 애플리케이션에 의하여 요구될 수 있거나, 또는 각각의 이벤트 보고 요구 메시지와 함께 요구될 수 있다. 이벤트 검출 포인트는 단지 제어 대화를 생성하는 스테이트 머신 컨텍스트에 적용되고, 이벤트 보고가 상기 스테이트 머신의 임의의 다른 컨텍스트에 의하여 생성되지 않게 한다. 이벤트 검출 포인트는 대응하는 스테이트 머신이 제거되면 자동적으로 제거된다.The application can also use the control conversations generated by the IDP to request subsequent event reporting from different detection points in the same execution context of the state machine. An event detection point may be required by the application in connection with the continuation and connection trigger response, or may be required with each event report request message. The event detection point is only applied to the state machine context that generates the control conversation and prevents event reporting from being generated by any other context of the state machine. The event detection point is automatically removed when the corresponding state machine is removed.

제어 대화는 상태가 초기 검출 포인트에서 아밍 기준(arming criteria)에 일치하면 항상 생성된다. 일반적으로 애플리케이션은 트리거로서 임의의 검출 포인트 클래스(스테이트 머신) 내에 단지 하나의 초기 검출 포인트에서 활성화될 것이고, 상기 애플리케이션에 의하여 필요로 하게 되는 임의의 부가적인 이벤트 보고를 요구하도록 결과로서 발생되는 제어 대화를 사용한다. 그러나, 애플리케이션은 임의의 검출 포인트 클래스 내에 다수의 IDPs를 활성화할 수 있다. 각 IDP는 다른 것과 독립적으로 동작하고, 결과적으로 발생되는 제어 대화는 독특하다. 임의의 경우에, 애플리케이션이 동일한 스테이트 머신 컨텍스트에 대하여 설정된 다수의 동시 발생 제어 대화를 갖도록 하는 것이 가능할 수 있지만, 어떠한 이점도 이 사실에서 얻을 수 없고, 상기 제어 대화는 여전히 다른 애플리케이션이 포함된 것처럼 독립하여 처리된다.A control dialogue is always created if the state meets the arming criteria at the initial detection point. In general, an application will be activated at only one initial detection point within any detection point class (state machine) as a trigger, resulting in a control dialogue resulting from requiring any additional event reporting required by the application. Use However, an application can activate multiple IDPs within any detection point class. Each IDP operates independently of the others, and the resulting control dialogues are unique. In any case, it may be possible for an application to have multiple concurrent control conversations set up for the same state machine context, but no benefit is gained from this fact, and the control conversations are still independent as if other applications were involved. Is processed.

특정한 목적지 어드레스에 TCP 접속을 제어하는 가설 애플리케이션용 검출 포인트 메시지 플로의 고-레벨 예시의 도 5를 참조한다.See Figure 5 of a high-level example of a detection point message flow for a hypothetical application that controls a TCP connection to a particular destination address.

1. SCL의 애플리케이션은 TCP 플로의 생성과 관련된, SYN 패킷의 검출과 관련된 검출 포인트를 활성화시킨다. 상기 검출 포인트 기준 제어될 타깃 목적지 어드레스(target destination address)를 식별한다.1. The application of the SCL activates the detection point associated with the detection of the SYN packet, which is related to the generation of the TCP flow. The target destination address to be controlled by the detection point reference is identified.

2. 이동국(MS)은 TCP SYN 패킷을 타깃 목적지 어드레스로 보내지도록 하는, 타깃 목적지 어드레스에 TCP 접속을 초기화한다.2. The mobile station MS initiates a TCP connection to the target destination address, which causes a TCP SYN packet to be sent to the target destination address.

3. TCP SYN 패킷이 MSSP를 전송하면, STL의 TCP 스테이트 머신은 TCP SYN 스테이트 검출 포인트에서 상태를 평가하고 단계1에서 SCL에 의하여 기억된 아밍 기준과 일치하는가를 식별한다. SYN 패킷의 처리가 지연되고 초기 검출 포인트 지시가 SCL로 제어 대화를 초기화하도록 SCL로 전송된다.3. If the TCP SYN packet sends an MSSP, the STL's TCP state machine evaluates the state at the TCP SYN state detection point and identifies whether it matches the arming criteria stored by the SCL in step 1. Processing of the SYN packet is delayed and an initial detection point indication is sent to the SCL to initiate a control conversation to the SCL.

4. SCL은 검출 이벤트 지시에 의하여 제공되는 데이터를 평가하고 TCP 접속이 다른 목적지로 향하게 되는가를 결정한다. 그것은 다른 목적지의 어드레스로 STL에 응답하고 TCP 접속이 끝날 때를 알려줄 것을 요구한다.4. The SCL evaluates the data provided by the detection event indication and determines whether the TCP connection is to another destination. It responds to the STL with the address of another destination and asks for the end of the TCP connection.

5. STL은 새로운 목적지에 TCP SYN 앞으로, 접속 요구를 인정하고, 이벤트 보고를 이 접속에 제공하도록 TCP 접속 종료 검출 포인트를 활성화한다.5. The STL acknowledges the connection request, forwarding the TCP SYN to the new destination, and activates the TCP connection termination detection point to provide an event report for this connection.

6. 새로운 목적지 및 이동국(MS)은 접속 및 교환 데이터를 오픈하도록 TCP 프로토콜을 완성한다.6. The new destination and mobile station (MS) completes the TCP protocol to open the connection and exchange data.

7. 이동국(MS)은 TCP FIN 패킷을 보내도록 하는, TCP 접속 해제 절차를 초기화한다. FIN 패킷이 MSSP를 송신하면, STL 엔티티(Entity)의 TCP 스테이트 머신은 TCP FIN 검출 포인트에서 상태를 평가하고 단계 5에서 SCL에 의하여 기억된 아밍 기준과 일치하는가를 식별한다. 요구된 이벤트 보고 지시가 SCL로 송신된다. 이 검출 포인트이 트리거로서가 아니라 이벤트 보고로서 활성화되기 때문에, TCP FIN 패킷의 처리가 시작되고 패킷이 DEST로 전송되고, 접속을 종료할 TCP 프로토콜이 완성된다.7. The mobile station (MS) initiates a TCP disconnection procedure, which sends a TCP FIN packet. When the FIN packet sends the MSSP, the TCP state machine of the STL entity evaluates the state at the TCP FIN detection point and identifies in step 5 whether it matches the arming criteria stored by the SCL. The requested event report indication is sent to the SCL. Since this detection point is activated not as a trigger but as an event report, the processing of the TCP FIN packet is started, the packet is sent to DEST, and the TCP protocol to terminate the connection is completed.

이 예에서, 검출 포인트는 TCP 스테이트 머신과 관련된다. STL 계층은 로드 모니터링(load monitoring), 세션 그룹, 가입자 세션(subscriber session), RADIUS 프로토콜, DHCP 프로토콜, DNS 프로토콜, TCP 프로토콜, 및 IP 프로토콜을 포함하는 복수의 스테이트 머신을 포함한다.In this example, the detection point is associated with a TCP state machine. The STL layer includes a plurality of state machines including load monitoring, session groups, subscriber sessions, RADIUS protocols, DHCP protocols, DNS protocols, TCP protocols, and IP protocols.

IP 검출 포인트 특성을 지정하는 기준은 운용자 ID, 가입자 그룹 ID, 세션ID, 소스 IP 어드레스, 소스 IP 포트 번호, 목적지 IP 어드레스, 목적지 IP 어드레서, 목적지 IP 포트 번호, 및 애플리케이션을 포함한다.Criteria for specifying IP detection point characteristics include operator ID, subscriber group ID, session ID, source IP address, source IP port number, destination IP address, destination IP address, destination IP port number, and application.

TCP 스테이트 머신용으로, 등록될 수 있는 검출 포인트는 FORWARD_SYN, REVERSE_SYN, TCP_ACK, FORWARD_FIN, REVERSE_FIN, 및 RESET를 포함한다.For a TCP state machine, detection points that can be registered include FORWARD_SYN, REVERSE_SYN, TCP_ACK, FORWARD_FIN, REVERSE_FIN, and RESET.

SCL은 STL이 활성 세션용 패킷 필터를 구성할 것을 요구할 수 있다. 일반적으로 이 요구는 가입자 로그인(login)을 검출하는 STL의 결과로서 이루어질 것이다. SCL이 세션을 생성하고 상기 세션용 적당한 패킷 필터를 구성하는 동안 상기 가입자 로그인이 지연된다. 패킷 필터의 성공적인 완료가 요구된 후, SCL은 가입자 세션이 처리될 수 있도록 가입자 로그인 구성(Login Conf)을 송신한다.The SCL may require the STL to configure a packet filter for active sessions. Typically this request will be made as a result of the STL detecting the subscriber login. The subscriber login is delayed while the SCL creates a session and configures the appropriate packet filter for the session. After successful completion of the packet filter is required, the SCL sends a subscriber login configuration (Login Conf) so that the subscriber session can be processed.

MSSP의 전체 동작의 예는 다음과 같다.An example of the overall operation of the MSSP is as follows.

1. 이 예의 시작에서, 운용자, 가입자 그룹, 서비스, 애플리케이션이 미리 MSSP 데이터베이스에 구성된다. 예를 들면, 그것들은 MSSP에 영구히 상주하거나 또는 운용자에 의하여 공급된다.1. At the beginning of this example, operators, subscriber groups, services, and applications are preconfigured in the MSSP database. For example, they reside permanently in the MSSP or are supplied by an operator.

2. STL 프로세스가 시작되고, 초기화되고, STL Up 지시 메시지를 SCL로 송신한다. 상기 메시지는 어떤 구성 데이터가 STL 엔티티에 필요한지 및 STL 엔티티가 어떤 능력을 지지하는지를 지시한다.2. The STL process starts, initializes, and sends an STL Up indication message to the SCL. The message indicates what configuration data is required for the STL entity and what capabilities the STL entity supports.

3. STL 프로세스가 시작되고, 초기화되고, MSSP 데이터베이스로부터 구성을 획득한다. SCL은 STL 버전 구성 요구(Version Config Request)와 함께 STL Up 지시 메시지에 응답한다.3. The STL process starts, initializes, and obtains the configuration from the MSSP database. The SCL responds to the STL Up indication message with an STL Version Config Request.

4. 각 STL 엔티티는 SCL로 버전(version) 결정을 완료하고 STL Up 지시 메시지에 요구되는 구성 데이터를 수신한다.4. Each STL entity completes a version decision with the SCL and receives the configuration data required for the STL Up indication message.

5. 검출 포인트를 지지하는 각 STL 엔티티는 각 검출 포인트를 등록하고, IDP 및 트리거 특성을 지정하고 기준 파라미터가 서로 관련되는가를 나타낸다.5. Each STL entity supporting a detection point registers each detection point, specifies IDP and trigger characteristics, and indicates whether the reference parameters are related to each other.

6. 검출 포인트 등록 메시지는 SCL이 검출 포인트 자원의 나중의 관리를 위하여 전후관계 대상물을 생성하도록 한다.6. The detection point registration message causes the SCL to create a context object for later management of the detection point resources.

7. 내부 애플리케이션 서비스가 MSSP에 활성화된다.7. The internal application service is activated on the MSSP.

8. SCL API 서버가 외부 애플리케이션 접속을 수용하기 시작한다.8. The SCL API server begins to accept external application connections.

그 다음, MSSP가 동작된 후:Next, after the MSSP is running:

1. 외부 애플리케이션이 API 서버에 접속하고 세션을 초기화하고, 그 식별 및 보안 정보를 제공한다.1. An external application connects to the API server, initiates a session, and provides its identification and security information.

2. API 서버는 애플리케이션을 인증하고, 모든 것을 순서대로 찾아내고, 세션이 애플리케이션에 반대로 응답을 송신함으로써 오픈되었는지를 확인하다.2. The API server authenticates the application, finds everything in order, and verifies that the session was opened by sending a response back to the application.

3. 애플리케이션 및 API 서버는 나머지 세션을 위하여 사용될 프로토콜 버전을 결정한다.3. The application and API server determine the protocol version to be used for the rest of the session.

4. 애플리케이션이 제공하는 서비스와 함께 미리 구성되지 않으면, 상기 애플리케이션은 API 서버로부터 제공되도록 구성되는 서비스의 리스트를 얻는다.4. If not preconfigured with the service provided by the application, the application gets a list of services that are configured to be provided from the API server.

5. 애플리케이션은 Arm IDP 요구를 API 서버에 전하고, MSSP 서비스, 검출 포인트, 및 아밍 기준을 식별한다.5. The application communicates Arm IDP requests to the API server and identifies MSSP services, detection points, and arming criteria.

6. SCL API 서버는 애플리케이션의 구성 특성 및 서비스 기준 제한에 대한 요구를 확인하고, 그 다음 Arm IDP 요구를 SCL 코어(core)에 전송한다.6. The SCL API server checks for the application's configuration characteristics and the requirements for service criteria restrictions, and then sends an Arm IDP request to the SCL core.

7. SCL 코어 스크립트는 요구를 확인하고, 지시된 MSSP 서비스를 애플리케이션과 결합시키고, 대응하는 애플리케이션 및 서비스 전후관계 대상물에서 계수를 더하고, 그 다음 Arm IDP 요구를 검출 포인트을 지지하는 각 STL 엔티티에 전송한다.7. The SCL core script confirms the request, associates the indicated MSSP service with the application, adds coefficients at the corresponding application and service context object, and then sends an Arm IDP request to each STL entity supporting the detection point. .

또한 검출 포인트 아밍 기준은 SCL 코어 전후관계 대상물에 저장되어 이 검출 포인트을 지지하는 STL 엔티티가 그 후에 추가되다면 아밍 요구가 생성될 수 있다.In addition, the detection point arming criteria may be stored in the SCL core context object and an arming request may be generated if an STL entity supporting this detection point is subsequently added.

8. 각 STL 엔티티가 검출 포인트 아밍을 확인하면, 대응하는 검출 포인트 자원이 MSSP 서비스 전후관계 대상물에 추가된다. 제1 DP 자원의 추가는 MSSP 서비스 스테이트를 "전개 상태(Deployed)"로 변화시키도록 하고 Arm IDP 요구의 확인이 API 서버로 전송된다(확인의 스크립트가 대응하는 애플리케이션 및 서비스 전후관계 대상물에서 계수를 더한 후).8. When each STL entity confirms the detection point arming, the corresponding detection point resource is added to the MSSP service context object. The addition of the first DP resource causes the MSSP service state to change to "Deployed" and an acknowledgment of the Arm IDP request is sent to the API server (the script of the acknowledgment counts the coefficients in the corresponding application and service context object). After the addition).

9. API 서버는 Arm IDP 확인을 애플리케이션에 중계한다.9. The API server relays the Arm IDP checks to the application.

10. 동일한 절차 후, 애플리케이션은 제공하는 서비스를 이행할 필요가 있는 임의의 추가 초기 검출 포인트를 활성화한다.10. After the same procedure, the application activates any additional initial detection points that need to fulfill the services it provides.

11. 애플리케이션은 IDP 이벤트 지시 메시지를 기다린다.11. The application waits for an IDP event indication message.

그 다음, 이동 사용자가 서비스를 사용하기를 원하면:Next, if the mobile user wants to use the service:

1. 사용자는 전화기(MS)를 켜고, RADIUS 요구를 초기화한다.1. The user turns on the telephone (MS) and initiates a RADIUS request.

2. MSSP RADIUS 프록시(proxy)는 RADIUS 요구를 RADIUS 서버로 전송한다.2. The MSSP RADIUS proxy sends a RADIUS request to the RADIUS server.

3. MSSP RADIUS 프록시는 RADIUS 서버로부터 성공적인 응답을 수신하고, 이동 가입자가 속한 가입자 그룹 ID 및 운용자 ID를 결정하고, STL 가입자 로그인 요구를 SCL 코어로 전송한다.3. The MSSP RADIUS Proxy receives a successful response from the RADIUS server, determines the subscriber group ID and operator ID to which the mobile subscriber belongs, and sends an STL subscriber login request to the SCL core.

4. SCL 코어 스크립트는 새로운 세션 전후관계 대상물을 생성하고, 그것을 가입자 그룹 및 운용자 전후관계 대상물과 결합하고, 상기 세션을 하나의 STL 엔티티에 할당하고, 상기 엔티티를 STL 생성 세션 요구 메시지에 전송한다.4. The SCL core script creates a new session context object, combines it with the subscriber group and operator context object, assigns the session to one STL entity, and sends the entity in an STL generated session request message.

5. STL 엔티티는 세션용 자원을 지정하고 STL 생성 세션 확인 메시지로 응답한다.5. The STL entity specifies the resource for the session and responds with an STL generated session confirmation message.

6. SCL 코어가 확인을 수신하면, 운용자 및 가입자 그룹용으로 구성되는 임의의 미터(meters) 및 패킷 필터는 적당한 메시지를 STL 엔티티로 송신함으로써 새로운 세션용으로 구성된다. 운용자 및 가입자 그룹용 디폴트 미터 마스크(default meter masks)가 STL 엔티티에 하나의 요구로 조합되고 구성된다.6. When the SCL core receives the acknowledgment, any meters and packet filters configured for the operator and subscriber groups are configured for the new session by sending the appropriate message to the STL entity. Default meter masks for operators and subscriber groups are combined and configured in one request to the STL entity.

7. 모든 세션 구성이 완료되면, SCL 코어는 STL 가입자 로그인 구성 메시지와 함께 MSSP RADIUS 프록시에 응답한다.7. When all session configuration is complete, the SCL Core responds to the MSSP RADIUS Proxy with an STL Subscriber Login Configuration message.

8. MSSP RADIUS 프록시는 MS에 반대로 성공적인 RADIUS 응답을 리턴한다.8. The MSSP RADIUS Proxy returns a successful RADIUS response back to the MS.

그 다음, 사용자가 데이터 접속을 하고 있는 동안:Then, while the user has a data connection:

1. 이동 사용자가 브라우저 접속(browser connection)을 초기화한다.1. The mobile user initiates a browser connection.

2. 새로운 세션을 요구하는 프로토콜 패킷이 이 가입자 세션이 할당되는 STL 엔티티에 의하여 제어되는 하드웨어로 발송된다.2. A protocol packet requesting a new session is sent to the hardware controlled by the STL entity to which this subscriber session is assigned.

3. STL 엔티티가 그 활성화된 초기 검출 포인트에서 기준을 평가하고 일치하는가를 발견한다.3. The STL entity evaluates and matches the criteria at its activated initial detection point.

4. STL 엔티티는 패킷의 처리를 중지하고 STL IDP 이벤트 지시 메시지를 SCL에 전송한다.4. The STL entity stops processing the packet and sends an STL IDP event indication message to the SCL.

5. SCL 스크립트는 중지된 플로를 보고된 IDP를 포함하는 서비스와 결합하고, 서비스 및 애플리케이션 트리거 계수를 더하고, IDP 이벤트 지시를 API 서버로 전송한다.5. The SCL script combines the stopped flow with the service containing the reported IDP, adds service and application trigger counts, and sends an IDP event indication to the API server.

6. API 서버는 IDP 이벤트 지시를 애플리케이션에 전송한다.6. The API server sends an IDP event indication to the application.

7. 애플리케이션은 IDP 이벤트 파라미터를 검사하고, API 서버에 접속 요구 메시지로 공급하는, MS 접속용 다른 목적지 어드레스를 결정한다.7. The application examines the IDP event parameters and determines another destination address for the MS connection, which feeds the API server in a connection request message.

8. API 서버는 접속 요구를 SCL 코어로 전송한다.8. The API server sends a connection request to the SCL core.

9. SCL 코어 스크립트는 서비스 및 애플리케이션 트리거 응답 계수를 증가시키고 STL 접속 요구를 중지된 패킷 플로로 STL 엔티티에 전송한다.9. The SCL core script increments the service and application trigger response counts and sends the STL connection request to the STL entity as a stopped packet flow.

10. STL 엔티티는 패킷을 업데이트된 목적지 어드레스로 변경하고 패킷 처리를 다시 시작하고, STL 접속 구성을 SCL 코어로 리턴한다.10. The STL entity changes the packet to the updated destination address, resumes packet processing, and returns the STL connection configuration to the SCL core.

11. SCL 코어는 접속 확인을 API 서버에 중계한다.11. The SCL core relays the connection confirmation to the API server.

12. API 서버는 접속 확인을 애플리케이션에 중계한다.12. The API server relays the connection confirmation to the application.

13. 애플리케이션에 의하여 선택되는 목적지는 MS로부터 접속 요구를 수신하고 MS와 접속을 오픈한다.13. The destination selected by the application receives a connection request from the MS and opens a connection with the MS.

14. MS 및 목적지 서버는 데이터를 교환한다.14. The MS and the destination server exchange data.

15. 접속의 기간 동안 주기적으로, STL 플로 미터 지시 메시지는 상기 세션용으로 구성되는 미터 엘리먼트의 값을 전달하도록 STL 엔티티로부터 SCL 코어로전송된다.15. Periodically for the duration of the connection, an STL flow meter indication message is sent from the STL entity to the SCL core to convey the value of the meter element configured for the session.

16. SCL 코어는 주기적 플로 미터 지시, 업데이팅 플로, 세션, 가입자 그룹, 운용자, 및 애플리케이션 전후관계 대상물의 데이터를 축적한다.16. The SCL core accumulates data of periodic flow meter indications, updating flows, sessions, subscriber groups, operators, and application context objects.

17. MS는 목적지 서버와 접속을 해제한다.17. The MS disconnects from the destination server.

18. STL 엔티티는 플로의 끝을 검출하고 상기 플로용 최종 STL 플로 미터 지시를 SCL 코어로 전송한다. 애플리케이션 또는 SCL에 의하여 활성화되는 어떠한 검출 포인트도 이 작용을 달성하는데 필요하지 않다. 그러나, 플로가 종료된 때를 STL 엔티티가 인식하지 못하는 다수의 시나리오가 있다. 이들 경우 SCL 코어는 플로 타임아웃 폴리시를 실행해야 하고 상기 플로를 STL 엔티티에 의하여 해제하도록 해야 한다.18. The STL entity detects the end of the flow and sends the final STL flow meter indication for the flow to the SCL core. No detection point activated by the application or the SCL is necessary to achieve this action. However, there are a number of scenarios in which the STL entity does not recognize when the flow has ended. In these cases the SCL core must implement the flow timeout policy and cause the flow to be released by the STL entity.

19. SCL 코어 스크립트는 이전과 마찬가지로, 플로 미터 지시, 업데이팅 플로, 세션, 가입자 그룹, 운용자, 서비스 및 애플리케이션 전후관계 대상물의 데이터를 축적한다.19. The SCL core script, as before, accumulates data from flow meter instructions, updating flows, sessions, subscriber groups, operators, services and application context objects.

20. SCL 코어 스크립트는 플로, 가입자, 서비스 및 종료된 플로에 대응하는 애플리케이션 상세 기록을 생성한다. 상기 플로와 서비스 전후관계 대상물 사이의 연관은 서비스에 구성되는 요금 부과 플랜(billing plan) ID를 플로 상세 기록에 위치될 수 있도록 하거나, 또는 애플리케이션은 요금 부과 플랜 ID를 플로 상세 기록에 위치되도록 제공할 수 있다.20. The SCL core script creates application detail records corresponding to flows, subscribers, services, and closed flows. The association between the flow and the service context object may allow a billing plan ID configured in the service to be located in the flow detail record, or the application may provide a billing plan ID to be located in the flow detail record. Can be.

21. 상세 기록는 운용자 요금 부과 서브시스템에 의하여 수집될 때까지 MSSP 데이터베이스에 저장된다.21. Detailed records are stored in the MSSP database until collected by the operator billing subsystem.

도 6을 참조하면, MSSP(260)는 후면(backplane)(650) 접속 다수의 상이한 모듈에 기반을 둔 섀시이다. 4개의 모듈 타입, 즉 입출력 모듈(610), 서비스 모듈(620), 제어 모듈(630), 및 패브릭 모듈(fabric module)(640)이 있다. 선택적으로, 여유 정보의 제어, SS7, 입출력 및 시스템의 패브릭 모듈이 있다. 입출력 모듈(610)의 수는 MSSP가 사용되는 무선 시스템을 필요로 하는 외부 접속에 종속된다. 일반적으로 서비스 모듈(620)의 수는 MSSP가 지원될 필요가 있는 서비스의 수 및 복잡성뿐만 아니라 가입자 수에 종속된다. 입출력 모듈(610) 및 서비스 모듈(620)은 반드시 1대 1의 관계로 결합될 필요는 없다. 제어 모듈(630)은 대안으로 섀시에 부가되거나 또는 일부 기능이 내부 제어 모듈(630)에 제공되고 결합된 기능이 외부 컴퓨터에 제공될 경우에 혼합 구성일 수 있다. 모든 모듈 타입은 1대 1의 여유 정보(redundancy)용으로 복제될 수 있다. 예를 들면 MSSP의 두 개의 패브릭 모듈일 수 있다.Referring to FIG. 6, MSSP 260 is a chassis based on a number of different modules with backplane 650 connections. There are four module types: input / output module 610, service module 620, control module 630, and fabric module 640. Optionally, there are control of spare information, SS7, I / O and fabric modules of the system. The number of input / output modules 610 is dependent on the external connection requiring the wireless system in which the MSSP is used. In general, the number of service modules 620 depends on the number of subscribers as well as the number and complexity of services the MSSP needs to support. The input / output module 610 and the service module 620 do not necessarily need to be combined in a one-to-one relationship. The control module 630 may alternatively be a mixed configuration where additional functionality is provided to the chassis or some functionality is provided to the internal control module 630 and combined functionality is provided to an external computer. All module types can be duplicated for one-to-one redundancy. For example, it may be two fabric modules of the MSSP.

패브릭 모듈(640)은 N-by-N 상호 연결을 다른 모듈에 제공하여, 임의 모듈이 패킷 데이터 또는 다른 정보를 다른 모듈로 직접 전달할 수 있다.The fabric module 640 provides an N-by-N interconnect to another module, allowing any module to directly forward packet data or other information to another module.

제어 모듈(630)은 MSSP 구성의 소프트웨어 베이스 계층을 호스팅하는 플랫폼을 제공한다. 시스템의 이 버전에서, 제어 모듈은 Sun Microsystem SPARC에 기반을 둔 프로세서를 사용한다.The control module 630 provides a platform for hosting the software base layer of the MSSP configuration. In this version of the system, the control module uses a processor based on Sun Microsystem SPARC.

입출력 모듈(610) 및 서비스 모듈(620)은 데이터 패킷의 하드웨어 베이스 처리를 실행한다. 패킷의 일반적인 데이터 경로가 입출력 모듈(610)에서 MSSP에 입력된다. 입출력 모듈은 패브릭 모듈(640)을 통하여 패킷을 서비스 모듈(620)로 전송한다. 상기 서비스 모듈은 즉시 패킷을 처리하고 그것을 MSSP로부터 내보내기 위하여 입출력 모듈(620)에 전송하거나, 또는 다음 처리를 위하여 패킷을 보유한다.The input / output module 610 and the service module 620 execute hardware base processing of the data packet. The general data path of the packet is input to the MSSP at the input / output module 610. The input / output module transmits the packet to the service module 620 through the fabric module 640. The service module immediately processes the packet and sends it to the input / output module 620 to export it from the MSSP or retains the packet for subsequent processing.

서비스 모듈(620)이 소프트웨어-베이스 SCL과 통시할 필요가 있으면, 상기 모듈은 패브릭 모듈(640)을 통하여 메시지를 소프트웨어 계층을 호스트하는 제어 모듈(630)로 전달한다. 제어 모듈(630)은 TCP/IP 통신 스택(stack)을 실행한다. 제어 모듈(630)을 실행하는 SCL(330)이 서비스 플랫폼(280)과 통신할 필요가 있으면, 상기 모듈은 상기 통신을 TCP/IP 스택 및 패브릭 모듈(640)을 통하여 인터페이스를 서비스 플랫폼에 제공하는 입출력 모듈(610)로 전달한다.If the service module 620 needs to communicate with the software-based SCL, the module passes a message through the fabric module 640 to the control module 630 hosting the software layer. The control module 630 executes a TCP / IP communication stack. If the SCL 330 executing the control module 630 needs to communicate with the service platform 280, the module provides the communication to the service platform via the TCP / IP stack and fabric module 640. Transfer to input / output module 610.

도 7을 참조하면, 입출력 모듈(610) 및 서비스 모듈(640)은 공통 하드웨어 구성을 공유한다. 패브릭 인터페이스(720)는 데이터를 후면의 다른 모듈로 전달하는 패브릭 모듈(640)에 통신 경로를 제공한다. 시스템의 이 버전에서, 패브릭 인터페이스는 패브릭 모듈(640)과 통신하도록 Gigabit Ethernet(GE)를 사용한다. 네트워크 프로세서(740)는 패브릭 인터페이스(720)와 통신하고 패킷을 수신하고 상기 패킷을 패브릭 모듈(640)을 통하여 전달한다. 상기 시스템의 이 버전에서, 네트워크 프로세서는 Intel IXP 1240 프로세서이다. 네트워크 프로세서(740)는 네트워크 제어 프로세서(744)에 의하여 제어되고 상기 네트워크 제어 프로세서와 네트워크 프로세서 사이에 공유되는 공유 호스트 메모리(742)를 사용한다.Referring to FIG. 7, the input / output module 610 and the service module 640 share a common hardware configuration. Fabric interface 720 provides a communication path to fabric module 640 that forwards data to other modules at the back. In this version of the system, the fabric interface uses Gigabit Ethernet (GE) to communicate with the fabric module 640. The network processor 740 communicates with the fabric interface 720, receives the packet, and passes the packet through the fabric module 640. In this version of the system, the network processor is an Intel IXP 1240 processor. The network processor 740 uses a shared host memory 742 controlled by the network control processor 744 and shared between the network control processor and the network processor.

또한 입출력 모듈(610)은 입출력 인터페이스(710)를 포함한다. 서비스 모듈(620)은 이 인테페이스를 포함할 필요가 없거나, 또는 현재 그것을 일반적으로사용하지 않는다. 입출력 인터페이스(710)는 MSSP용 외부 데이터 접속을 제공한다. 예를 들면, 데이터는 상기한 입출력 인터페이스에 의하여 MSSP와 이동 네트워크(120) 사이 및 MSSP와 인터넷(140) 사이에 전달된다. 패킷은 입출력 인터페이스(710)와 네트워크 프로세서(740) 사이에 직접 전달된다.In addition, the input / output module 610 includes an input / output interface 710. The service module 620 does not need to include this interface or currently does not generally use it. Input / output interface 710 provides an external data connection for the MSSP. For example, data is transferred between the MSSP and the mobile network 120 and between the MSSP and the Internet 140 by the input / output interface described above. The packet is passed directly between the input / output interface 710 and the network processor 740.

분류 코프로세서(classification coprocessor)(730)는 네트워크 입출력 인터페이스(710)와 패브릭 인터페이스(720)와 네트워크 프로세서(740) 사이에 전달되는 데이터 패킷 상에 "스누프(snoops)한다". 분류 코프로세서는 임의의 프로토콜 레벨에서 패킷의 특성을 검출함으로써 특정 타입의 패킷을 검출하도록 구성된다. 상기 분류 코프로세서가 검출하는 패턴은 분류 제어 프로세서(734)를 설정하는 코프로세서 패턴 메모리(732)에 저장된다. 분류 코프로세서(730)가 찾고 있는 특정 타입의 패킷을 검출하면, 상기 분류 코프로세서는 네트워크 프로세서(740)가 패킷을 수신한 후 약간의 지연과 동시에 네크워크 프로세서(740)에 알린다. 시스템의 이 버전에서, 분류 코프로세서(730)는 Solidum Systems에 의하여 제조되고, 정규 표현 특정에 따른 패킷의 검출을 제공한다. 이들 정규 표현은 하나 이상의 프로토콜 계층에서 패킷의 특성을 포함한다.The classification coprocessor 730 "snoops" on the data packets passed between the network input / output interface 710 and the fabric interface 720 and the network processor 740. The classification coprocessor is configured to detect a particular type of packet by detecting the characteristics of the packet at any protocol level. The pattern detected by the classification coprocessor is stored in coprocessor pattern memory 732 which sets classification control processor 734. When the classification coprocessor 730 detects the specific type of packet it is looking for, the classification coprocessor notifies the network processor 740 with a slight delay after the network processor 740 receives the packet. In this version of the system, classification coprocessor 730 is manufactured by Solidum Systems and provides for the detection of packets according to regular expression specifications. These regular expressions contain the characteristics of packets at one or more protocol layers.

제어 모듈(630)을 실행하는, MSSP 구성의 소프트웨어 계층은 패브릭 모듈(650), 패브릭 인터페이스(720), 및 네트워크 프로세서(740)를 통하여 분류 제어 프로세서(734)와 통신함으로써 검출되는 패킷 패턴(즉, 검출 포인트)을 설정한다.The software layer of the MSSP configuration, executing the control module 630, is a packet pattern (i.e., detected by communicating with the classification control processor 734 via the fabric module 650, the fabric interface 720, and the network processor 740). , Detection point).

또한 서비스 모듈(620)은 외부 서비스에 터널 접속을 유지하는 서비스 모듈에 의하여 사용되는, 암호화/복호화 엔진(750)을 포함한다. 예를 들면, MSSP(250)와 컨텐츠 제공자(150) 사이의 통신은 보안 터널을 따라 이루어질 수 있다. 암호화/복호화 엔진은 하드웨어에 필요한 암호화 및 복호화를 실행한다.The service module 620 also includes an encryption / decryption engine 750, which is used by the service module to maintain tunnel connections to external services. For example, communication between MSSP 250 and content provider 150 may be along a secure tunnel. The encryption / decryption engine performs encryption and decryption necessary for the hardware.

이동 네트워크(120)로부터 인터넷(140)으로 통하는 패킷용 일반적인 경로는 입출력 모듈(610)의 입출력 인터페이스(710)를 통하여 MSSP(260)로 들어간다. 패킷은 입출력 모듈의 네트워크 프로세서(740)를 통과한다. 분류 코프로세서(730)에 의하여 도움을 받는, 네트워크 프로세서(740)는 패킷이 MSSP에 의하여 처리되기로 되어 있는 이동국(MS)(132)과 통신의 한쪽인지를 결정한다. 만약 그렇다면, 네트워크 프로세서(740)는 패킷을 패브릭 인터페이스(720) 및 패브릭 모듈(650)을 통하여 서비스 모듈(620)로 직접 전달한다. 상기 패킷은 그 패브릭 인터페이스(720)를 통하여 서비스 모듈로 들어가고 서비스 모듈의 네트워크 프로세서(740)로 전달된다. 분류 코프로세서(730)는 패브릭 인터페이스(720)로부터 네트워크 프로세서(740)로 전달되는 패킷에 스누프한다. 패킷이 분류 코프로세서가 검출하려고 하는 패턴과 일치하면, 패킷 코프로세서는 네트워크 프로세서 및 네트워크 제어 프로세서(744)에 알린다.The general path for packets from the mobile network 120 to the Internet 140 enters the MSSP 260 via the input / output interface 710 of the input / output module 610. The packet passes through the network processor 740 of the input / output module. Helped by the classification coprocessor 730, the network processor 740 determines whether the packet is one side of communication with a mobile station (MS) 132 that is supposed to be processed by the MSSP. If so, the network processor 740 forwards the packet directly to the service module 620 via the fabric interface 720 and the fabric module 650. The packet enters the service module via its fabric interface 720 and is delivered to the network processor 740 of the service module. The classification coprocessor 730 snoops into the packet from the fabric interface 720 to the network processor 740. If the packet matches the pattern that the classification coprocessor is trying to detect, the packet coprocessor informs the network processor and the network control processor 744.

패킷이 상기 구성의 소프트웨어 층에 의하여 처리될 필요가 없다면, 네트워크 프로세서(740)는 패킷을 패브릭 인터페이스(720)로부터 MSSP의 밖으로 전달하기 위한 입출력 모듈로 전송한다. 입출력 모듈은 네트워크 프로세서(740)를 통하여 입출력 인터페이스(710) 및 MSSP의 밖으로 통과되는 패킷을 수신한다.If the packet does not need to be processed by the software layer of the configuration, the network processor 740 sends the packet from the fabric interface 720 to the input / output module for delivery out of the MSSP. The input / output module receives packets passed out of the input / output interface 710 and the MSSP through the network processor 740.

상기 패킷이 상기 구성의 소프트웨어 층의 개입을 요구하는 검출 포인트와결합된다면, 서비스 모듈의 네트워크 프로세서(740)는 패킷을 즉시 발송하지 않는다. 오히려, 네트워크 제어 프로세서(744)는 패브릭 모듈을 통하여 소프트웨어가 호스트되는 제어 모듈에 통신함으로써 소프트웨어와 통신한다. 네트워크 제어 프로세서는 결국 소프트웨어 층으로부터 응답을 수신하고, 상기 패킷을 적당하게 처리하도록 네트워크 프로세서를 제어한다. 응답이 구성된 기간 내에 오지 않는다면, 상기 패킷은 디폴트 처리 규정을 사용하여 처리된다.If the packet is combined with a detection point that requires intervention of the software layer of the configuration, the network processor 740 of the service module does not immediately send the packet. Rather, the network control processor 744 communicates with the software by communicating through a fabric module to a control module where the software is hosted. The network control processor eventually receives a response from the software layer and controls the network processor to properly process the packet. If the response does not come within the configured period, the packet is processed using the default processing rules.

상기 패킷이 이 패킷을 중지할 것을 요구하지 않지만 소프트웨어 계층의 통지를 요구하는 검출 포인트와 결합된다면, 네트워크 제어 프로세서(744)는 메시지를 제어 모듈로 전송하고, 네트워크 프로세서(740)는 제어 모듈로부터 지시를 기다리지 않고 상기 패킷을 적당한 입출력 모듈로 전달한다.If the packet is combined with a detection point that does not require this packet to be stopped but requires notification of the software layer, the network control processor 744 sends a message to the control module, and the network processor 740 indicates from the control module. Deliver the packet to the appropriate I / O module without waiting for it.

MSSP(260)의 동작은 이동국(MSs)(132)과 컨텐츠 제공자(150) 사이의 통신 세션을 모니터하도록, 유한 상태 모델(finite state models)과 같은, 모델을 사용한다. MSSP(260)는 이들 콜 모델(call model)의 변화에서, 예를 들면 유한 상태 모델의 상태 또는 상태 변화에서 검출 포인트를 허용하도록 구성된다. 상기 콜 모델은 다수의 프로토콜 계층에서 발생한다. 예를 들면, 최하 계층에서, 콜 모델은 전체 PDP 콘텍스트와 결합된다. 더 높은 계층에서, 콜 모델은 TCP 플로와 같은 전송 층 플로와 결합된다. 콜 모델의 상태는 초기 설정 또한 플로의 종료에 관계한다. 보다 높은 프로토콜 계층에서, 콜 모델은 예를 들면, HTTP 프로토콜 다음의 통신 세션과 결합되는, 애플리케이션 계층 교환과 결합된다.The operation of the MSSP 260 uses a model, such as finite state models, to monitor the communication session between the mobile stations (MSs) 132 and the content provider 150. MSSP 260 is configured to allow detection points in changes in these call models, for example in the state or state change of the finite state model. The call model occurs at multiple protocol layers. For example, at the lowest layer, the call model is combined with the overall PDP context. At higher layers, the call model is combined with transport layer flows such as TCP flows. The state of the call model is related to the initial setup and the end of the flow. At the higher protocol layer, the call model is combined with application layer exchange, for example, with a communication session following the HTTP protocol.

서비스 플랫폼(280), 외부의 서비스 플랫폼(282), 또는 MSSP 내부의 제어 모듈에 실행할 수 있는 서비스 논리는 통지하기를 요구하거나 또는 세션의 제어를 수신하도록 요구하는 특정 검출 포인트를 등록한다. 상기 검출 포인트는 일반적으로 상기 검출 포인트 파라미터뿐만 아니라 콜 모델 중 하나의 모델에서 특정 상태 또는 상태 변화에 의하여 식별된다. 한 예는 TCP 세션이 특정 IP 어드레스에 구성되도록 시도하거나, 또는 HTTP 세션이 특정 웹 페이지를 요구할 때 검출 포인트를 설정하고 있다.The service logic executable by the service platform 280, external service platform 282, or control module inside the MSSP registers a particular detection point that requires notification or receives control of the session. The detection point is generally identified by a particular state or state change in one of the call models as well as the detection point parameter. One example is attempting to configure a TCP session to a specific IP address, or setting a detection point when an HTTP session requires a specific web page.

후면에서 제어 모듈에 실행하는 MSSP의 SCL은 검출 포인트를 등록하기 위한 요구를 수신하고, 서비스 모듈의 분류 코프로세서 및 네트워크 프로세서의 구성을 차례로 요구하는, STL의 대응하는 요구를 내린다.The SCL of the MSSP executing on the control module at the back receives a request to register a detection point and issues a corresponding request of the STL, which in turn requires configuration of the classification coprocessor and network processor of the service module.

상기에서 설명된 접근법은 광범위한 서비스 타입 및 요금 부과 모델을 지원한다. 다수의 예시적인 예가 이하에서 설명된다.The approach described above supports a wide range of service types and charging models. Many illustrative examples are described below.

제1 서비스 타입은 무료 전화 통화 모델(toll-free telephone calling model)과 유사하다. 이 서비스에서, 사용자는 컨텐츠 제공자와 데이터 통신을 위하여 요금 청구를 하지 않을 것이다. 이것의 한 예는 800Flowers.com으로 부르는 인터넷 호스트에서 웹 서버인 것처럼 엑세스되는 플라워 재배자 서비스이다.The first type of service is similar to a toll-free telephone calling model. In this service, the user will not charge for data communication with the content provider. An example of this is a flower grower service that is accessed as if it were a web server from an Internet host called 800Flowers.com.

셋업 상태에서, 외부 서비스 플랫폼은 사용자가 800Flowers.com으로 부르는 호스트로부터 웹 페이지의 검색을 시도하는가를 통지하도록 요구하기 위하여 MSSP와 통신한다. 상기 MSSP에서, SCL은 요구를 수신하고 확인하고, 검출을 실행하는데 필요한 이벤트 및 하드웨어 트리거를 셋업하도록 STL에 요구한다.In the setup state, the external service platform communicates with the MSSP to request that the user attempt to retrieve a web page from a host called 800Flowers.com. In the MSSP, the SCL requests the STL to set up the events and hardware triggers necessary to receive and confirm the request and to execute the detection.

사용자가 800Flowers.com에서 그의 MS로부터 웹 페이지를 검색하기 시도하면, 구성된 트리거가 검출된다. STL은 외부 서비스 플랫폼을 확인하는 검출을 SCL에 알린다. 외부 서비스 플랫폼은 요구가 발송되는 곳, 이 경우 FTD.com을 결정하고, SCL에 알리고, SCL은 STL에 방향 변경 지시를 전하고, STL은 네트워크 프로세서가 800Flowers.com보다 FTD.com으로 나머지 플로의 방향을 변경할 것을 요구한다. 검출되는 오리지널 패킷은 인터넷에 바로 전달되고, 방향 변경된 어드레스를 반영하도록 변경된다.When the user attempts to retrieve a web page from his MS at 800Flowers.com, the configured trigger is detected. The STL informs the SCL of the detection identifying the external service platform. The external service platform determines where the request is sent, in this case FTD.com, informs the SCL, sends the SCL a change direction indication, and the STL directs the network flow to the FTD.com rather than 800Flowers.com. Require change. The original packet detected is delivered directly to the Internet and changed to reflect the redirected address.

FTD.com을 갖는 세션이 완료되면, SCL은 세션 동안 전달되는 데이터의 양 및 시산을 반영하는 IPDR을 생성하고, 그리고 그것은 요금 부과 노드에 전송한다. 또한 운용자는 사용자에게 요금 청구하기보다는 사용자의 통신의 이 부분에 대한 FTD에 요금 청구할 것이다.Upon completion of the session with FTD.com, the SCL generates an IPDR that reflects the amount and estimate of data delivered during the session, and sends it to the billing node. The operator will also charge the FTD for this portion of the user's communication rather than charging the user.

다른 서비스는 무선 선불 음성 서비스(wireless prepaid voice services)와 유사하다. MSSP가 특정 사용자로부터 PDP 컨텍스트의 셋업을 검출하도록 제공된다. MSSP가 새로운 PDP 컨텍스트를 검출하면, 이 경우 제어 모듈에 상주하고 있는 애플리케이션 논리는 사용자가 그의 계좌에서 플러스 잔액을 갖고 있는 가를 결정하기 위하여 외부 회계 서버(external accounting server)와 통신한다. 이 서비스의 한 버전에서, 이 회계 서버는 음성 선불 서비스용으로 사용되는 동일한 프로토콜을 사용하는 SS7 네트워크에 의하여 엑세스 가능하다.Another service is similar to wireless prepaid voice services. An MSSP is provided to detect the setup of a PDP context from a particular user. When the MSSP detects a new PDP context, the application logic residing in the control module in this case communicates with an external accounting server to determine if the user has a positive balance in his account. In one version of this service, this accounting server is accessible by SS7 network using the same protocol used for voice prepaid service.

SCL이 사용자를 확인한 후, 사용자의 데이터는 변경없이 MSSP로 전달된다. 사용자가 세션을 종료하면, SCL은 세션 동안 통과되는 데이터의 양 또는 존속 기간에 따른 사용자의 차감 잔액을 감소시키도록 회계 서버에 명령을 전달한다.After the SCL confirms the user, the user's data is passed to the MSSP without modification. When the user ends the session, the SCL sends a command to the accounting server to reduce the user's deductible balance based on the amount of data passed during the session or the duration.

다른 실시예에서, 네트워크(100)는 다른 사람에 의하여 완전히 스폰서된 기초하에 사용자에 의하여 엑세스되는 스폰서 패킷 교환 데이터 서비스(sponsored packet switched data service)를 제공하도록 이용된다. 애플리케이션 베이스 서비스(컨텐츠 또는 사용자 대화 서비스) 및 네트워크 서비스(패킷 데이터 전송)는 사용자에게 무료, 무대가 원칙으로 제공된다. 서비스를 사용하기 이전에, 사용자는 서비스의 접속에 의하여 "방송 시간(air time)" 패킷 데이터 전송 요금 또는 다른 컨텐츠 또는 사용 서비스 요금도 적용되지 않는다는 것을 알고 있다. 선택적으로, 사용자는 스폰서되는 서비스를 요구하는 시간에 통지될 수 있다.In another embodiment, the network 100 is used to provide a sponsored packet switched data service that is accessed by a user on a fully sponsored basis by another person. Application-based services (content or user chat services) and network services (packet data transfers) are free and staged to users. Prior to using the service, the user knows that the "air time" packet data transfer charge or other content or use service charge does not apply by connection of the service. Optionally, the user can be notified at the time of requesting a sponsored service.

네트워크 운용자는 패킷 교환 데이터 서비스를 식별하는 임의의 및 모든 고유 네트워크 어드레스, 패킷 교환 데이터 서비스 공급자에 사용자가 향하는 방법 및 사용자가 어느 패킷 교환 데이터 서비스 공급자에 향하는가를 결정하는 폴리시 결정(policy decisions), 및 스폰서가 어떤 원칙으로 및 세션 동안 요금 청구를 할지를 결정하는 폴리시 결정을 포함하는 스폰서 패킷 교환 데이터 서비스를 처리하고 제어한다. 선택 및 요금 청구를 위한 폴리시 결정은 서비스 공급자의 선택, 및 스폰서를 위한 지불의 방법 및 원칙에 대하여, 운용자와 제3자, 스폰서나 서비스 공급자 사이의 선계약(pre-agreement)을 통합하는 규정을 포함할 수 있다. 접속하기 위한 서비스 공급자의 폴리시 결정은 사용자 아이덴티티(identity), 사용자의 위치, 시간, 사용자 클래스, 서비스 공급자 클래스, 네트워크 상태, 선계약 규정, 및/또는 정부 법규와 같은 요소에 따른 서비스 요구 때에 이루어질 수 있다. 예를 들면, 어떤 스폰서가 어떤 원칙으로 및 요금 청구를 할지에 대한 폴리시 결정은 아이덴티티, 사용자의 위치, 시간, 사용자 클래스, 서비스 공급자 클래스, 네트워크 상태, 선계약 규정, 및/또는 정부 법규와 같은 유사한 요소에 따른 서비스 요구 때에 이루어질 수 있다.The network operator is responsible for any and all unique network addresses that identify a packet switched data service, policy decisions that determine how the user is directed to the packet switched data service provider, and to which packet switched data service provider the user is directed, and Processes and controls the Sponsor Packet Switching Data Service, including a policy decision that determines which principle the sponsor will charge for and during the session. The policy decision for selection and billing establishes provisions for integrating a pre-agreement between the operator and a third party, sponsor or service provider, regarding the choice of service provider and the methods and principles of payment for the sponsor. It may include. The policy decision of the service provider to connect may be made at the time of service request based on factors such as user identity, user's location, time of day, user class, service provider class, network status, pre-registration rules, and / or government regulations. have. For example, policy decisions on which sponsors will be charged under what principles and billing may be based on similarities such as identity, user's location, time of day, user class, service provider class, network status, pre-registration rules, and / or governmental regulations. Can be made at the time of service request according to the factor.

도 8을 참조하면, 스폰서 패킷 교환 데이터 서비스 프로세스(800)는 패킷 교환 데이터 서비스용 요구를 수신하는 단계(802)를 포함한다. 이 요구는 일반적으로 공중 인터페이스에 의하여 네트워크(100)에 접속하는 사용자에서 시작된다. 또한 상기 요구는 사용자에게 스폰서의 서비스를 시도하도록 권하는 서비스 스폰서에 의하여 푸쉬 작동(push operation)에 대한 응답일 수 있다. 푸쉬 작동은 스폰서가 활동을 시작하는 작업이다.Referring to FIG. 8, the sponsored packet switched data service process 800 includes a step 802 of receiving a request for a packet switched data service. This request is typically initiated by a user connecting to the network 100 by the air interface. The request may also be a response to a push operation by the service sponsor encouraging the user to try the sponsor's service. A push action is a job where a sponsor starts an activity.

상기 프로세스(800)는 사용자가 패킷 교환 데이터 서비스용 네트워크(100)에 엑세스하도록 허가되는가를 결정한다(804). 상기 패킷 교환 데이터 서비스에 대한 나중의 폴리시 결정을 만드는데 필요한 사용자 클래스 정보 및 위치 정보가 상기 결정(804) 동안 수집된다. 사용자가 상기 네트워크(100)에 엑세스하도록 허가되지 않으면, 상기 프로세스(800)는 사용자 요구를 거부한다(806).The process 800 determines 804 whether a user is authorized to access the network 100 for packet switched data services. User class information and location information needed to make a later policy decision for the packet switched data service is collected during the decision 804. If the user is not authorized to access the network 100, the process 800 denies the user request (806).

사용자가 패킷 교환 데이터 서비스용 네트워크(100)에 엑세스하도록 허가되면, 상기 프로세스(800)는 요구된 서비스가 스폰서된 패킷 교환 데이터 서비스에 대한 것인가를 결정한다(808). 서비스 요구가 스폰서된 패킷 교환 데이터 서비스가 아니면, 상기 프로세스(800)는 다른 서비스 요구 프로세스로 사용자 요구를 처리한다(810).If the user is authorized to access network 100 for packet switched data services, the process 800 determines 808 whether the requested service is for a sponsored packet switched data service. If the service request is not a sponsored packet switched data service, the process 800 processes the user request with another service request process (810).

서비스 요구가 스폰서된 패킷 교환 데이터 서비스에 대한 것이면, 상기 프로세스(800)는 사용자가 특정 요구된 스폰서 패킷 교환 데이터 서비스에 엑세스하도록 허가되는가를 결정한다(812). 사용자가 특정 요구된 패킷 교환 데이터 서비스에 엑세스하도록 허가되지 않으면, 상기 프로세스(800)는 사용자 요구를 거부한다(806).If the service request is for a sponsored packet switched data service, the process 800 determines 812 whether the user is authorized to access a particular requested sponsored packet switched data service. If the user is not authorized to access a particular requested packet switched data service, the process 800 denies the user request (806).

사용자가 특정 요구된 패킷 교환 데이터 서비스에 엑세스하도록 허가되면, 상기 프로세스(800)는 특정 요구된 교환 데이터 서비스용 서비스 공급자를 선택한다(814). 상기 선택(814)은 하나 이상의 요소(factor)에 따른 네트워크(100)의 운용자의 폴리시 결정을 실행하는 저장된 규정 원칙과 관련하여 이루어진다. 요소는 사용자 아이덴티티, 사용자의 위치, 시간, 사용자 클래스, 서비스 공급자 클래스, 네트워크 상태, 선계약 규정, 및/또는 정부 법규를 포함할 수 있다. 예를 들면, 네트워크(100)의 운용자가 특정 요구된 교환 데이터 서비스를 정상적으로 공급하면, 규정 원칙 선택은 바람직하게 서비스 공급자로서 운용자를 선택한다.If the user is authorized to access a particular requested packet switched data service, the process 800 selects 814 a service provider for the particular requested switched data service. The selection 814 is made in connection with a stored regulatory principle that performs a policy decision of the operator of the network 100 according to one or more factors. The elements may include user identity, user location, time of day, user class, service provider class, network status, pre-registration rules, and / or governmental regulations. For example, if the operator of the network 100 normally supplies a particular requested exchange data service, then the rule selection preferably selects the operator as a service provider.

상기 선택된 서비스 공급자, 즉 스폰서, 아이덴티티는 클래스, 다음에 선택되는 서비스 공급자, 다음에 얻어지는 정보로부터 스폰서를 결정하기 위한 규정일 수 있다. 서비스를 제공하고 있는 경우에, 운용자는 스폰서로 지명될 것이다. 제3자가 서비스 공급자로서 선택되고 서비스를 스폰서하도록 동의한다면, 제3자도 스폰서로서 간주될 것이다. 상기 프로세스(800)는 스폰서를 선택하기 위하여 운용자의 폴리시 결정을 실행하는 다른 규정 원칙을 사용할 수 있다. 한 예로서, 선택은 제3자와 스폰서로될 운용자 또는 특정 서비스의 공동 스폰서 사이의 선계약에 따른다.The selected service provider, i.e. sponsor, identity may be a rule for determining a sponsor from the class, the service provider selected next, and the information obtained next. In the case of providing the service, the operator will be nominated as a sponsor. If a third party is chosen as the service provider and agrees to sponsor the service, the third party will also be considered a sponsor. The process 800 may use other regulatory principles to implement an operator's policy decision to select a sponsor. As one example, the selection depends on a pre-contract between the third party and the operator to be sponsored or the co-sponsor of the particular service.

상기 프로세스(800)는 사용자를 선택된 서비스 공급자에 접속하고(816) 패킷 교환 데이터 서비스 세션을 초기화한다. 상기 프로세스(800)는 예를 들면, 세션 동안 발생되는 요금 청구 및 다른 정보를 수집하면서, 패킷 교환 데이터 세션을 모니터하고 측정한다. 발생되는 요금 청구 및 다른 정보의 타입은 공급되는 패킷 교환 데이터 서비스 및 스폰서의 타입에 따른다. 한 예로서, 수집된 정보의 타입은 네트워크 운용자의 폴리시 결정이다. 제3자 스폰서의 경우에, 폴리시 결정은 운용자와 제3자 사이의 선계약에 일반적으로 의존한다. 예를 들면, 제3자 서비스 공급자가 무료 패킷 교환 데이터 서비스의 스폰서이면, 요금 청구 정보는 기준의 수에 기초한 네트워크 접속 요금을 위하여 수집된다. 부가적으로, 데이터 서비스의 사용에 대한 정보가 수집될 수 있어, 공급자는 예를 들면, 그 마케팅 및 광고 고객에게 상기한 비용을 청구할 수 있다. 유사하게, 서비스 공급자가 운용자이면, 대체로 어떤 일시불의 대가를 갖지 않지만, 네트워크 사용 및 데이터 사용을 알기 위하여 필요할 수 있고 예를 들면, 그 마케팅 및 광고 고객에게 이 정보를 전달할 수 있다.The process 800 connects the user to the selected service provider (816) and initiates a packet switched data service session. The process 800 monitors and measures packet switched data sessions, for example, while collecting billing and other information generated during the session. The type of billing and other information that is generated depends on the type of packet switched data service and sponsor that is supplied. As one example, the type of information collected is a policy decision of the network operator. In the case of a third party sponsor, the policy decision is generally dependent on the precontract between the manager and the third party. For example, if the third party service provider is a sponsor of a free packet switched data service, billing information is collected for network connection fees based on the number of criteria. In addition, information about the use of the data service may be collected, so that the supplier may, for example, charge the marketing and advertising customer with the above costs. Similarly, if the service provider is an operator, it usually does not have any one-time payment, but may be needed to know network usage and data usage and may, for example, convey this information to its marketing and advertising customers.

세션 동안, 상기 프로세스(800)는 실시간 또는 거의 실시간으로 요금 정보를 전송할 수 있다.During the session, the process 800 can send the fare information in real time or near real time.

상기 세션이 완료되면, 상기 프로세스(800)는 적당한 노드에 요금 청구 및 다른 정보를 전송한다(820). 상기 노드는 정보 전달을 위하여 저장된 요금 및 정보 유닛에 대한 식별된 스폰서(들)의 계좌(들)에 기입한다. 또한, 필요하다면, 임의의 사용 정보가 상기 노드에 의하여 사용자 기록에 일치시킨다.Once the session is complete, the process 800 sends 820 the billing and other information to the appropriate node. The node writes in the account (s) of the identified sponsor (s) for the stored fee and information unit for information transfer. Also, if necessary, any usage information is matched by the node to the user record.

다른 실시예에서, 네트워크(100)는 서비스 공급자에 의하여 사용자에 공급되는 구매 서비스에 따라 사용자에게 거래-베이스 패킷 교환 데이터 서비스를 제공하도록 사용된다. 서비스 공급자가 일 인 제3자, 다수의 제3자, 및/또는 네트워크(100)의 운용자일 수 있다. 구매 서비스는 애플리케이션-베이스 서비스, 예를 들면, 서비스의 컨텐츠 또는 사용자 대화식 서비스, 제품, 예를 들면, 소프트웨어 프로그램, 라이센스(license), 예를 들면, 소프트웨어 프로그램을 사용할 권리, 후배달용 상품, 예를 들면, 쉽게 사용자에 의하여 픽업되는 아이템, 판매 아울렛 또는 판매 위치, 또는 서비스 공급자에 의하여 사용자의 위치에 배달용일 수 있다. 상기 서비스의 배달에 포함되는 패킷 교환 데이터 전송용 네트워크 서비스는 서비스의 전체 구매가에 포함되는, 즉 사용자는 구매 요구를 이행하는데 필요한 임의의 네트워크 서비스를 위한 개별 요금 또는 대가를 초래하지 않는다. 서비스를 사용하기 전에, 사용자는 서비스의 접속에 의하여 서비스가 요금 기준으로 제공되고 꾸러미 네트워크 서비스 및 전송 요금을 포함한다는 것을 알고 있다. 한 예로, 사용자는 요금 기초에 따른 거래인 서비스를 요구하는 시간에 통지될 수 있다.In another embodiment, network 100 is used to provide a transaction-based packet switched data service to a user in accordance with a purchase service provided to the user by a service provider. The service provider may be a single third party, multiple third parties, and / or operators of the network 100. The purchase service may be an application-based service, for example the content of the service or a user interactive service, a product, for example a software program, a license, for example the right to use the software program, a product for post-delivery, for example For example, an item may be easily picked up by a user, a sales outlet or a sales location, or for delivery to a user's location by a service provider. The network service for packet switched data transmission included in the delivery of the service is included in the total purchase price of the service, i.e. the user does not incur an individual fee or cost for any network service required to fulfill the purchase request. Before using the service, the user knows that by accessing the service, the service is provided on a fee basis and includes package network services and transmission charges. As an example, a user may be notified at the time of requesting a service that is a transaction based on a fee basis.

상기 네트워크(100)의 운용자는 거래-베이스 패킷 교환 데이터 서비스를 처리하고 제어한다. 이것은 패킷 교환 데이터 서비스를 식별하는 임의의 및 모든 고유 네트워크 어드레스, 패킷 교환 데이터 서비스 공급자에 사용자가 향하는 방법 및 사용자가 어느 패킷 교환 데이터 서비스 공급자에 향하는가를 결정하는 폴리시 결정, 및 사용자가 어떤 원칙으로 및 요금 청구되는 방법을 결정하는 폴리시 결정, 및 서비스 공급자에 위임되는 임의의 폴리시 결정을 포함한다. 선택 및 요금 청구에 대한 폴리시 결정은 서비스 공급자의 선택 및 사용자의 지불 방법 및 원칙에 대하여, 운용자와 서비스 공급자와 같은, 제3자 사이의 임의의 선계약을 통합하는 규정을 포함할 수 있다. 예를 들면, 접속할 서비스 공급자의 폴리시 결정은 사용자 아이덴티티, 사용자의 위치, 시간, 사용자 클래스, 서비스 공급자 클래스, 네트워크 상태, 선계약 규정, 및/또는 정부 법규와 같은 요소에 기초한 서비스 요구 때에 이루어질 수 있다.The operator of the network 100 processes and controls the transaction-based packet switched data service. This includes any and all unique network addresses that identify a packet switched data service, a policy decision that determines how the user is directed to a packet switched data service provider, and which packet switched data service provider the user is directed to, and in what principles and Policy decisions that determine how to be billed, and any policy decisions that are delegated to service providers. The policy decision for selection and billing may include provisions for incorporating any pre-contract between a third party, such as an operator and a service provider, with respect to the choice of service provider and the method and principle of payment of the user. For example, the policy decision of the service provider to connect to may be made in service requests based on factors such as user identity, user's location, time of day, user class, service provider class, network status, pre-registration rules, and / or governmental regulations. .

도 9를 참조하면, 거래-베이스 패킷 교환 데이터 서비스 프로세스(900)는 패킷 교환 데이터 서비스용 사용자로부터 요구를 수신하는 단계(902)를 포함한다. 상기 서비스 요구는 공중 인터페이스를 통하여 상기 네트워크(100)에 접속하는 사용자로부터 시작되거나 또는 상기 서비스 요구는 그 서비스를 구매하도록 사용자를 권하는 서비스 공급자에 의하여 푸쉬 작동에 대한 응답으로 일어날 수 있다. 푸쉬 동작은 스폰서가 활동을 시작하는 동작이다.With reference to FIG. 9, a transaction-based packet switched data service process 900 includes receiving 902 a request from a user for a packet switched data service. The service request may originate from a user connecting to the network 100 via an air interface or the service request may be in response to a push operation by a service provider who advises the user to purchase the service. A push action is an action where a sponsor starts an activity.

상기 프로세스(900)는 사용자가 거래-베이스 패킷 교환 데이터 서비스용 네트워크(100)에 엑세스하도록 허가되는가를 결정한다(904). 상기 요구된 거래-베이스 패킷 교환 데이터 서비스에 대한 나중의 폴리시 결정을 만드는데 필요한 사용자 클래스 정보 및 위치 정보가 상기 결정(904) 동안 수집된다. 사용자가 네트워크(100)에 엑세스하도록 허가되지 않으면, 프로세스(900)는 사용자 요구를 거부한다(906).The process 900 determines (904) whether a user is authorized to access the network 100 for transaction-based packet switched data services. User class information and location information needed to make a later policy decision for the requested transaction-based packet switched data service is collected during the decision 904. If the user is not authorized to access the network 100, the process 900 denies the user request (906).

사용자가 거래-베이스 패킷 교환 데이터 서비스용 네트워크(100)에 엑세스하도록 허가되면, 상기 프로세스(900)는 요구된 서비스가 거래-베이스 패킷 교환 데이터 서비스인가를 결정한다(908). 서비스 요구가 거래-베이스 패킷 교환 데이터 서비스용이 아니면, 상기 프로세스(900)는 다른 서비스 요구 프로세스로 사용자 요구를 처리한다(910).If the user is authorized to access network 100 for transaction-based packet switched data service, the process 900 determines 908 whether the requested service is a transaction-based packet switched data service. If the service request is not for a transaction-based packet switched data service, the process 900 processes the user request with another service request process (910).

서비스 요구가 거래-베이스 패킷 교환 데이터 서비스용이면, 상기 프로세스(900)는 사용자가 특정 요구된 거래-베이스 패킷 교환 데이터 서비스에 엑세스하도록 허가되는가를 결정한다(912). 사용자가 특정 요구된 거래-베이스 패킷 교환 데이터 서비스에 엑세스하도록 허가되지 않으면, 상기 프로세스(900)는 사용자 요구를 거부한다(906).If the service request is for a transaction-base packet switched data service, the process 900 determines (912) whether the user is authorized to access a particular requested transaction-base packet switched data service. If the user is not authorized to access a particular requested transaction-base packet switched data service, the process 900 denies the user request (906).

사용자가 특정 요구된 거래-베이스 패킷 교환 데이터 서비스에 엑세스하도록 허가되면, 상기 프로세스(900)는 특정 요구된 거래-베이스 패킷 교환 데이터 서비스용 서비스 공급자를 선택한다(914). 상기 선택(914)은 하나 이상의 요소에 따른 네트워크(100)의 운용자의 폴리시 결정을 실행하는 저장된 규정 원칙과 관련하여 이루어진다. 요소는 사용자 아이덴티티, 사용자의 위치, 시간, 사용자 클래스, 서비스 공급자 클래스, 네트워크 상태, 선계약 규정, 및/또는 정부 법규를 포함할 수 있다. 예를 들면, 네트워크(100)의 운용자가 특정 요구된 거래-베이스 패킷 교환 데이터 서비스를 정상적으로 공급하면, 규정 원칙 선택은 바람직하게 서비스 공급자로서 운용자를 선택한다.If the user is authorized to access a particular requested transaction-base packet switched data service, the process 900 selects 914 a service provider for the particular requested transaction-base packet switched data service. The selection 914 is made in connection with a stored regulatory principle that makes policy decisions of operators of the network 100 according to one or more elements. The elements may include user identity, user location, time of day, user class, service provider class, network status, pre-registration rules, and / or governmental regulations. For example, if the operator of the network 100 normally supplies a particular requested transaction-based packet switched data service, then the rule selection preferably selects the operator as a service provider.

상기 프로세스(900)는 사용자의 요구를 허가한다(916). 허가(916)는 서비스 공급자 및/또는 네트워크(100)의 운용자에 의한 참가를 포함할 수 있다. 거래-베이스 허가(916)된 상기 사용자에 의하여 요구되는 서비스는 요구를 하는 사용자가제공되는 서비스로부터 발생되는 예상 채무를 지불할 충분한 신용 또는 지불 능력을 갖고 있는지를 결정하는 단계를 포함한다. 사용자가 선택된 거래-베이스 서비스의 구매를 하도록 허가되지 않으면, 상기 프로세스(900)는 사용자에게 상기 서비스를 거부한다(906).The process 900 authorizes the user's request (916). Authorization 916 may include participation by a service provider and / or operator of network 100. The service required by the transaction-based authorization 916 user includes determining whether the requesting user has sufficient credit or payment capability to pay anticipated debt arising from the service provided. If the user is not authorized to make a purchase of the selected transaction-based service, the process 900 denies the service to the user (906).

사용자가 선택된 거래-베이스 서비스의 구매를 계속하도록 허가되면, 상기 프로세스(900)는 사용자를 식별된 서비스 공급자에 접속시키고(918) 패킷 교환 데이터 서비스 세션이 개시된다. 개시된 거래-베이스 패킷 교환 데이터 서비스는 식별된 서비스 공급자로부터 사용자에 의하여 하나 이상의 거래 베이스 서비스의 구매를 포함할 수 있다. 상기 프로세스(900)는 하나의 사용자 세션 내의 각 개별 구매 세션을 모니터하고(920) 구매 또는 구매들을 위한 요금 청구 및 다른 정보를 발생한다(922). 각 구매 세션 동안, 상기 프로세스(900)는 실시간, 또는 거의 실시간으로 노드에 요금 청구 정보를 전송한다. 요금 청구 정보 및 다른 정보의 타입은 제공되는 패킷 교환 데이터 서비스 및 공급자의 타입에 의존한다. 한 예로서, 수집되는 정보의 타입은 네트워크 운용자의 폴리시 결정이다. 제3자 공급자의 예에서, 일반적으로 수집되는 정보의 타입은 상기 네트워크(100)의 운용자와 제3자 공급자 사이의 선계약에 의존한다. 예를 들면, 구매 허가는 거래 베이스 서비스를 전달하도록 시도하는데 사용될 수 있는 최대 네트워크 자원을 제한할 수 있다. 미리 협정된 폴리시는 어떤 상태하에서 서비스가 전달되고 네트워크 운용자에 의하여 서비스를 전달하도록 적당한 시도의 제한을 구성하는 것을 결정할 수 있다.If the user is authorized to continue purchasing the selected transaction-based service, the process 900 connects the user to the identified service provider (918) and initiates a packet switched data service session. The disclosed transaction-based packet switched data service may include the purchase of one or more transaction based services by a user from an identified service provider. The process 900 monitors each individual purchase session within one user session (920) and generates (922) billing and other information for the purchase or purchases. During each purchase session, the process 900 sends billing information to the node in real time or near real time. The type of billing information and other information depends on the type of packet switched data service and provider provided. As one example, the type of information collected is the policy decision of the network operator. In the example of a third party provider, the type of information collected generally depends on the pre-contract between the operator of the network 100 and the third party provider. For example, a purchase authorization may limit the maximum network resources that can be used to attempt to deliver a transaction based service. The pre-arranged policy may determine under certain conditions that the service is delivered and constitutes a restriction of suitable attempts to deliver the service by the network operator.

예를 들면, 불충분한 네트워크 상태가 공급자와 사용자 사이의 회복불가능한패킷 에러 상태 때문에 서비스 전달 시도 동안 받아들일 수 없는 많은 수의 패킷 재전송을 초래한다면, 미리 협정된 폴리시 규정은 서비스 전달 시도가 중지되고, 구매가 취소되고 구매 세션이 시기 상조로 완료 선언되는 임계치를 포함할 수 있다. 더 일반적인 "정상" 상태하에서, 구매 세션은 거래-베이스 서비스의 전달이 완료될 때 완료로 결정된다.For example, if an inadequate network condition results in an unacceptable number of packet retransmissions during a service delivery attempt because of an unrecoverable packet error condition between the provider and the user, the pre-arranged policy provisions may stop the service delivery attempt, It may include a threshold at which the purchase is canceled and the purchase session is declared prematurely completed. Under the more general "normal" state, the purchase session is determined to be complete when the delivery of the transaction-based service is complete.

구매 세션이 완료되면, 상기 프로세스(900)는 노드에 요금 청구 정보 및 다른 정보를 전송한다(962). 요금 청구는 볼륨, 기간, 시간, 최종 목적지, 위치, 서비스의 품질, SMS, 공급된 IMSI/가입자, 수신인 지불 요금, 무료 요금, 균일 요금(flat rate), 및 운반인 서비스(bearer service)와 같은 다수의 요소에 기초할 수 있다.Once the purchase session is complete, the process 900 sends 962 billing information and other information to the node. Billing may be such as volume, duration, time of day, final destination, location, quality of service, SMS, IMSI / subscriber supplied, recipient payment fee, free fee, flat rate, and bearer service. It can be based on a number of factors.

상기 프로세스(900)는 요금 청구 유닛을 정보 전달을 위하여 저장된 지불 및 정보 유닛용 사용자의 계좌에 기입한다(928). 또한 서비스 공급자와 구매 세션 완료에 관련된 네트워크 운용자 사이의 정보 교환도 있을 수 있다. 상기 프로세스(900)는 임의의 사용 정보를 서비스 공급자 기록에 일치시킨다.The process 900 writes the billing unit to the user's account for the stored payment and information unit for transfer of information (928). There may also be an exchange of information between the service provider and the network operator involved in completing the purchase session. The process 900 matches any usage information to the service provider record.

사용자와 서비스 공급자 사이의 서비스 세션이 다수의 구매 세션을 포함한다면, 사용자는 다른 거래 베이스 서비스 요구를 하도록 선택할 수 있다. 사용자가 다른 요구를 갖지 않고 및/또는 모든 구매 세션이 완료되면, 상기 서비스 세션은 완료된다. 사용자가 동일한 서비스 세션 동안 동일한 서비스 공급자로부터 다른 및/또는 다수의 구매 요구를 하도록 선택하면, 이들 추가 요구는 프로세스(900)에 의하여 처리된다.If the service session between the user and the service provider includes multiple purchase sessions, the user may choose to make different transaction based service requests. If the user has no other needs and / or all purchasing sessions are completed, the service session is completed. If the user chooses to make different and / or multiple purchase requests from the same service provider during the same service session, these additional requests are processed by process 900.

다른 하드웨어 구성에서, 패브릭 카드를 갖는 후면을 사용하기 보다는, 일체로 조합된 입출력 모듈 및 서비스 모듈이 외부 데이터 접속 및 패킷 처리를 제공한다. 이 조합된 카드는 피자 박스"(pizza box)"와 같은, 컴퓨터 섀시 내에 호스트된다.In other hardware configurations, rather than using the back side with a fabric card, an integrally combined input and output module and service module provide external data access and packet processing. This combined card is hosted in a computer chassis, such as a pizza box "pizza box".

다른 실시예에서, MSSP는 패킷화된 음성 트래픽이 이동 네트워크와 고정 네트워크 사이에 전달되는 IP(VoIP) 서비스에 의하여 음성을 제공하도록 사용된다.In another embodiment, the MSSP is used to provide voice by IP (VoIP) service where packetized voice traffic is passed between the mobile network and the fixed network.

또 다른 실시예에서, 상기에서 설명된 접근법은 Mobile Virtual Network Operator(MVNO) 환경에 적용된다. 하나의 상기한 환경에서, 복수의 운용자가 하나의 MSSP를 공유한다. 서비스, 사용자 그룹 및 다른 구성은 운용자 베이스 마다 하나로 된다. 이 방식에서, 하나의 가상 운용자의 가입자간의 데이터 통신은 상기 운용자용 서비스에 의하여 처리된다. 즉, 가입자용 플로만이 상기 운용자에 의하여 제공되는 서비스를 시작하게 한다. 물리 네트워크의 운용자는 예를 들면, 그들의 물리 네트워크의 사용을 위하여 가상 운용자에 요금을 청구하도록, 사용 정보를 수신할 수 있다. 가상 운용자는 그들의 가입자용 상세 기록를 수신할 수 있어 그들의 가입자, 서비스 제공자, 및 서비스 모델 베이스의 광고자에게 요금을 청구할 수 있다. 다른 MVNO 환경에서, 하나의 MSSP는 다른 네트워크 위치, 예를 들면, 플로를 처리하지 않고, 다른 MSSP에 특정 가상 운용자용 통신을 발송할 수 있다.In another embodiment, the approach described above applies to a Mobile Virtual Network Operator (MVNO) environment. In one such environment, multiple operators share one MSSP. Services, user groups, and other configurations are one per operator base. In this manner, data communication between subscribers of one virtual operator is handled by the operator service. That is, only the subscriber flow starts the service provided by the operator. Operators of the physical network may receive usage information, for example, to bill the virtual operator for use of their physical network. The virtual operators can receive detailed records for their subscribers and can bill advertisers based on their subscribers, service providers, and service models. In other MVNO environments, one MSSP may send communications for a particular virtual operator to another MSSP without having to process another network location, for example a flow.

다른 실시예에서, GSM/GRPS보다 다른 타입의 무선 구성이 지원된다. 예를 들면, 상기에서 설명된 MSSP는 CDMA, TDMA, 및 제3 세대(3G) 시스템을 포함하는 다수의 다른 타입의 무선 데이터 네트워크용 게이트웨이로서 작용할 수 있다.In other embodiments, other types of wireless configurations than GSM / GRPS are supported. For example, the MSSP described above can act as a gateway for many other types of wireless data networks, including CDMA, TDMA, and third generation (3G) systems.

또한, GSM/GPRS 경우에, MSSP의 기능은 다른 노드와 조합될 수 있다. 예를 들면, GGSN 및 MSSP의 기능은 하나의 노드에 조합될 수 있다.In addition, in the case of GSM / GPRS, the functionality of the MSSP can be combined with other nodes. For example, the functions of the GGSN and MSSP can be combined in one node.

또한 MSSP는 무선 데이터 네트워크를 포함하지 않는 통신을 제어할 수도 있다. 예를 들면, 외부 서비스 플랫폼을 갖는 모델 접근법은 가입자의 네트워크와 광역 기간 네트워크 사이, 또는 무선 LAN과 고정 네트워크 사이와 같은, 네트워크 사이를 통과하는 통신 세션을 모니터링하고 제어하는데 적용가능하다.The MSSP may also control communications that do not include a wireless data network. For example, a model approach with an external service platform is applicable to monitoring and controlling communication sessions passing between networks, such as between a subscriber's network and a wide area network, or between a wireless LAN and a fixed network.

다수의 다른 하드웨어 구성도 가능하다. 예를 들면, 다른 구성에서, 입출력 모듈 및 서비스 모듈의 기능이 조합될 수 있고, 제어 모듈로 지원되는 일부의 기능은 MSSP 섀시와 함께 호스트될 수 있다.Many other hardware configurations are possible. For example, in other configurations, the functions of the input / output module and the service module may be combined, and some of the functions supported by the control module may be hosted with the MSSP chassis.

상기한 설명은 예시적으로 의도되고 부가된 청구항의 범위에 의하여 제한되는 본 발명의 범위를 제한하지 않는다는 것을 알 수 있다. 다른 실시예는 다음의 청구항의 범위 내에 있다.It is to be understood that the above description is intended to be illustrative, and not to limit the scope of the invention, which is limited by the scope of the appended claims. Other embodiments are within the scope of the following claims.

Claims (63)

데이터 네트워크의 노드를 통과하는 데이터 통신의 처리 방법에 있어서,In the method of processing data communication passing through a node of a data network, 서비스의 검출 포인트 구성 단계를 포함하여 상기 노드 상에 서비스를 제공하는 단계,Providing a service on the node comprising the step of configuring a detection point of a service, 상기 구성된 검출 포인트와의 일치 여부를 식별하도록 통신을 모니터링하는 단계를 포함하여 상기 노드를 통과하는 통신을 처리하는 단계, 및Processing a communication passing through the node, including monitoring the communication to identify a match with the configured detection point; and 상기 구성된 검출 포인트와의 일치를 식별하면, 상기 검출 포인트의 서비스에 대한 서비스 논리를 통지하는 단계Upon identifying a match with the configured detection point, notifying service logic for the service of the detection point 를 포함하는 데이터 통신 처리 방법.Data communication processing method comprising a. 제1항에 있어서,The method of claim 1, 상기 노드를 통과하는 통신을 처리하는 단계는 무선 네트워크로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing the communication passing through the node comprises processing data communication from a wireless network. 제2항에 있어서,The method of claim 2, 상기 무선 네트워크로부터 데이터 통신을 처리하는 단계는 제2 세대(senond-generation: 2G) 무선 전화 네트워크로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing data communication from the wireless network comprises processing data communication from a second-generation (2G) wireless telephone network. 제2항에 있어서,The method of claim 2, 상기 무선 네트워크로부터 데이터 통신을 처리하는 단계는 제3 세대 무선 전화 네트워크로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing data communication from the wireless network comprises processing data communication from a third generation wireless telephone network. 제2항에 있어서,The method of claim 2, 상기 무선 네트워크로부터 데이터 통신을 처리하는 단계는 GPRS 인에이블형 무선 네트워크로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing data communication from the wireless network comprises processing data communication from a GPRS enabled wireless network. 제2항에 있어서,The method of claim 2, 상기 무선 네트워크로부터 데이터 통신을 처리하는 단계는 무선 근거리 통신망(wireless local area network: WLAN)으로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing data communication from the wireless network comprises processing data communication from a wireless local area network (WLAN). 제1항에 있어서,The method of claim 1, 상기 노드를 통과하는 통신을 처리하는 단계는 고정 네트워크로부터 데이터 통신을 처리하는 단계를 포함하는 데이터 통신 처리 방법.Processing the communication passing through the node comprises processing data communication from a fixed network. 제1항에 있어서,The method of claim 1, 상기 노드 상에 복수의 서비스 운용자를 구성하는 단계를 추가 포함하는 데이터 통신 처리 방법.Configuring a plurality of service operators on the node. 제8항에 있어서,The method of claim 8, 상기 운용자를 구성하는 단계는 가상 운용자를 구성하는 단계를 포함하는 데이터 통신 처리 방법.Configuring the operator comprises configuring a virtual operator. 제8항에 있어서,The method of claim 8, 상기 서비스를 제공하는 단계는 상기 서비스를 상기 운용자 중 하나와 연관시키는 단계를 포함하는 데이터 통신 처리 방법.Providing the service comprises associating the service with one of the operators. 제10항에 있어서,The method of claim 10, 상기 데이터 통신 처리 방법은 상기 운용자 사이에 데이터 보안을 제공하는 단계를 추가 포함하는 데이터 통신 처리 방법.The data communication processing method further comprises providing data security between the operators. 제1항에 있어서,The method of claim 1, 상기 서비스를 제공하는 단계는 상기 검출 포인트를 구성하는 사양(specification)을 수신하는 단계를 더 포함하는 데이터 통신 처리 방법.Providing the service further comprises receiving a specification constituting the detection point. 제1항에 있어서,The method of claim 1, 상기 서비스를 제공하는 단계는 상기 노드 외부의 서버로부터 상기 서비스의 구성 정보를 수신하는 단계를 포함하는 데이터 통신 처리 방법.Providing the service includes receiving configuration information of the service from a server outside the node. 제1항에 있어서,The method of claim 1, 상기 데이터 통신은 패킷 데이터 통신을 포함하는 데이터 통신 처리 방법.And the data communication comprises packet data communication. 제14항에 있어서,The method of claim 14, 상기 패킷 데이터 통신은 인터넷 프로토콜(Internet Protocol: IP) 데이터 통신을 포함하는 데이터 통신 처리 방법.And said packet data communication comprises Internet Protocol (IP) data communication. 제15항에 있어서,The method of claim 15, 상기 검출 포인트 구성 단계는 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.The step of configuring a detection point includes specifying a characteristic at one or more protocol layers. 제16항에 있어서,The method of claim 16, 상기 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 네트워크 계층에서 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying the characteristic at the one or more protocol layers comprises specifying the characteristic at a network layer. 제16항에 있어서,The method of claim 16, 상기 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 전송 계층에서특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying the characteristic at the one or more protocol layers comprises specifying the characteristic at the transport layer. 제18항에 있어서,The method of claim 18, 상기 전송 계층에서 특성을 지정하는 단계는 전송 제어 프로토콜(Transport Control Protocal: TCP)에 관한 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.The step of specifying a characteristic at the transport layer comprises the step of specifying a characteristic relating to a transport control protocol (TCP). 제18항에 있어서,The method of claim 18, 상기 전송 계층에서 특성을 지정하는 단계는 유니버설 데이터그램 프로토콜(Universal Datagram Protocol: UDP)에 관한 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법,The step of specifying a characteristic at the transport layer includes a step of specifying a characteristic relating to Universal Datagram Protocol (UDP), 제16항에 있어서,The method of claim 16, 상기 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 애플리케이션 계층에서 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying the characteristic at the one or more protocol layers comprises specifying the characteristic at an application layer. 제21항에 있어서,The method of claim 21, 상기 애플리케이션 계층에서 특성을 처리하는 단계는 하이퍼 텍스트 전송 프로토콜(Hyper Text Transport Protocol: HTTP)의 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Processing the characteristic at the application layer comprises specifying a characteristic of a Hyper Text Transport Protocol (HTTP). 제21항에 있어서,The method of claim 21, 상기 애플리케이션 계층에서 특성을 지정하는 단계는 RADIUS 응용 프로토콜의 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying an attribute at the application layer comprises specifying an attribute of a RADIUS application protocol. 제21항에 있어서,The method of claim 21, 상기 애플리케이션 계층에서 특성을 지정하는 단계는 도메인 네임 서비스(Domain Name Service: DNS) 프로토콜의 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying an attribute at the application layer comprises specifying an attribute of a Domain Name Service (DNS) protocol. 제16항에 있어서,The method of claim 16, 상기 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 복수의 프로토콜 계층에서 특성을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying the characteristic at the one or more protocol layers includes specifying the characteristic at a plurality of protocol layers. 제16항에 있어서,The method of claim 16, 상기 하나 이상의 프로토콜 계층에서 특성을 지정하는 단계는 하나 이상의 프로토콜 계층에서 데이터 패킷 필드를 식별하는 정규 표현(regular expression)을 지정하는 단계를 포함하는 데이터 통신 처리 방법.Specifying the characteristic at the one or more protocol layers comprises specifying a regular expression that identifies a data packet field in the one or more protocol layers. 제1항에 있어서,The method of claim 1, 상기 데이터 통신 처리 방법은, 상기 검출 포인트와의 일치를 식별하면, 상기 서비스 논리에 따라 상기 통신을 처리하는 단계를 추가로 포함하는 데이터 통신 처리 방법.The data communication processing method further comprises the step of processing the communication according to the service logic upon identifying a match with the detection point. 제27항에 있어서,The method of claim 27, 상기 통신 처리 방법은, 상기 검출 포인트와의 일치를 식별하면, 상기 일치된 검출 포인트와 연관된 통신을 중단시키는 단계를 추가로 포함하는 통신 처리 방법.And the communication processing method further comprises, upon identifying a match with the detection point, stopping the communication associated with the matched detection point. 제27항에 있어서,The method of claim 27, 상기 통신을 추가로 처리하는 단계는Further processing the communication 상기 서비스 논리로부터 이벤트 검출 포인트의 사양을 수신하는 단계,Receiving a specification of an event detection point from the service logic, 상기 이벤트 검출 포인트를 구성하는 단계, 및Configuring the event detection point, and 상기 구성된 이벤트 검출 포인트와의 일치 여부를 식별하도록 상기 통신을 모니터링하는 단계Monitoring the communication to identify a match with the configured event detection point 를 포함하는 통신 처리 방법.Communication processing method comprising a. 제27항에 있어서,The method of claim 27, 상기 통신을 추가로 처리하는 단계는 상기 통신을 전환(redirecting)시키는 단계를 포함하는 통신 처리 방법.Further processing the communication comprises redirecting the communication. 제27항에 있어서,The method of claim 27, 상기 통신을 추가로 처리하는 단계는 통신 터널을 통해 상기 통신을 상기 서비스와 연관된 목적지로 전달하는 단계를 포함하는 통신 처리 방법.Processing the communication further comprises forwarding the communication to a destination associated with the service via a communication tunnel. 제27항에 있어서,The method of claim 27, 상기 통신을 추가로 처리하는 단계는 상기 통신을 필터링하는 단계를 포함하는 통신 처리 방법.Further processing the communication comprises filtering the communication. 제32항에 있어서,33. The method of claim 32, 상기 필터링하는 단계는 데이터 패킷 내의 식별된 어드레스에 따라 상기 데이터 패킷을 차단시키는 단계를 포함하는 통신 처리 방법.And the filtering step includes blocking the data packet according to an identified address in the data packet. 제27항에 있어서,The method of claim 27, 상기 통신을 추가로 처리하는 단계는 상기 통신에 폴리시(policy)를 적용하는 단계를 포함하는 통신 처리 방법.Further processing the communication comprises applying a policy to the communication. 제34항에 있어서,The method of claim 34, wherein 상기 통신에 폴리시를 적용하는 단계는 데이터 속도 폴리시를 적용하는 단계를 포함하는 통신 처리 방법Applying a policy to the communication includes applying a data rate policy. 제1항에 있어서,The method of claim 1, 상기 서비스를 제공하는 단계는 네트워크 관리 시스템과 통신하는 단계를 포함하는 데이터 통신 처리 방법.And providing the service comprises communicating with a network management system. 제1항에 있어서,The method of claim 1, 상기 서비스를 제공하는 단계는 양방향 서비스 대화에 대한 통신 요금 특성(metering characteristics)을 식별하는 단계를 포함하고,Providing the service includes identifying communication metering characteristics for a two-way service conversation, 상기 노드를 통과하는 통신을 처리하는 단계는 상기 서비스와 각각 연관된 데이터 통신의 양방향 서비스 대화를 검출하는 단계, 및 상기 검출된 양방향 서비스 대화에 대한 요금 정보를 기록하는 단계를 추가로 포함하는Processing the communication passing through the node further includes detecting a two-way service conversation of a data communication associated with each of the services, and recording fee information for the detected two-way service conversation. 통신 처리 방법.Communication processing method. 제37항에 있어서,The method of claim 37, 상기 검출된 양방향 서비스 대화에 대한 요금 정보를 기록하는 단계는 상기 양방향 서비스 대화에서 전송된 데이터량을 기록하는 단계를 포함하는 통신 처리 방법.Recording the fee information for the detected two-way service conversation comprises recording the amount of data transmitted in the two-way service conversation. 제38항에 있어서,The method of claim 38, 상기 전송된 데이터량을 기록하는 단계는 패킷의 수를 기록하는 단계를 포함하는 통신 처리 방법.Recording the amount of transmitted data comprises recording the number of packets. 제38항에 있어서,The method of claim 38, 상기 전송된 데이터량을 기록하는 단계는 바이트 수에 비례하는 수를 기록하는 단계를 포함하는 통신 처리 방법.Recording the amount of transmitted data comprises recording a number proportional to the number of bytes. 제38항에 있어서,The method of claim 38, 상기 전송된 데이터량을 기록하는 단계는 상기 노드를 일방향으로 통과한 데이터량을 기록하는 단계를 포함하는 통신 처리 방법.Recording the amount of transmitted data comprises recording the amount of data that has passed through the node in one direction. 제37항에 있어서,The method of claim 37, 상기 검출된 양방향 서비스 대화에 대한 요금 정보를 기록하는 단계는 상기 양방향 서비스 대화가 이루어지는 동안 데이터 전송 속도를 기록하는 단계를 포함하는 통신 처리 방법.Recording the fee information for the detected two-way service conversation comprises recording a data transmission rate during the two-way service conversation. 제37항에 있어서,The method of claim 37, 상기 요금 정보를 기록하는 단계는 상기 양방향 서비스 대화의 개별 플로(flow)에 대한 요금 정보를 기록하는 단계를 포함하는 통신 처리 방법.Recording the fee information comprises recording fee information for an individual flow of the interactive service conversation. 제37항에 있어서,The method of claim 37, 상기 요금 정보를 기록하는 단계는 상기 양방향 서비스 대화의 플로 집단(group)에 대한 요금 정보를 기록하는 단계를 포함하는 통신 처리 방법.Recording the fee information comprises recording fee information for a flow group of the interactive service conversation. 제37항에 있어서,The method of claim 37, 상기 요금 정보를 기록하는 단계는 전체 양방향 서비스 대화에 대한 요금 정보를 기록하는 단계를 포함하는 통신 처리 방법.Recording the fee information comprises recording the fee information for the entire interactive service conversation. 데이터 네트워크의 노드를 통과하는 데이터 통신을 처리하는 방법에 있어서,A method of processing data communication through nodes of a data network, the method comprising: 구성된 검출 포인트과의 일치 여부를 식별하도록 통신 세션에 대한 데이터 패킷을 모니터링하는 단계를 포함하여, 상기 노드를 통과하는 데이터 통신에서 상기 통신 세션을 처리하는 단계,Processing the communication session in a data communication passing through the node, including monitoring a data packet for the communication session to identify a match with a configured detection point; 상기 통신 세션 중 하나에서 상기 구성된 검출 포인트와의 일치를 식별하면, 상기 검출 포인트를 식별하는 요구를 외부 서비스 논리에 전달하는 단계, 및Upon identifying a match with the configured detection point in one of the communication sessions, forwarding a request to the external service logic to identify the detection point, and 상기 전달된 요구에 응답하여 상기 서비스 논리로부터 수신된 정보에 따라 상기 통신 세션을 추가로 처리하는 단계Further processing the communication session according to the information received from the service logic in response to the forwarded request. 를 포함하는 데이터 통신 처리 방법.Data communication processing method comprising a. 제46항에 있어서,47. The method of claim 46 wherein 상기 추가 처리 단계는 상기 통신 세션을 중단시킨 다음, 상기 수신된 정보에 따라 상기 통신 세션에 대한 데이터를 전달하는 단계를 포함하는 데이터 통신처리 방법.The further processing step comprises stopping the communication session and then transferring data for the communication session in accordance with the received information. 제46항에 있어서,47. The method of claim 46 wherein 상기 추가 처리 단계는 상기 수신된 정보에 따라 상기 통신 세션을 전환시키는 단계를 포함하는 데이터 통신 처리 방법.And said further processing step of switching said communication session in accordance with said received information. 데이터 네트워크의 노드를 통과하는 데이터 통신 상에 제공된 서비스를 모니터링하는 방법에 있어서,A method of monitoring a service provided on data communication through a node of a data network, comprising: 양방향 서비스 대화에 대한 통신 특성을 식별하는 단계를 포함하는 서비스 제공 단계,Providing a service comprising identifying communication characteristics for a two-way service conversation, 상기 서비스의 특정 사용자와 각각 연관된 데이터 통신의 양방향 서비스 대화를 검출하는 단계, 및Detecting a bidirectional service conversation of data communication each associated with a particular user of the service, and 상기 검출된 양방향 서비스 대화에 관한 정보를 제공하는 단계Providing information regarding the detected interactive service conversation 를 포함하는 서비스 모니터링 방법.Service monitoring method comprising a. 제49항에 있어서,The method of claim 49, 상기 양방향 서비스 대화 검출 단계는 상기 데이터 통신을 검출 포인트에 일치시키는 단계를 포함하는 서비스 모니터링 방법.And detecting the two-way service conversation comprises matching the data communication to a detection point. 제50항에 있어서,51. The method of claim 50, 상기 검출 포인트는 다중 프로토콜 계층의 특성을 포함하는 서비스 모니터링 방법.The detection point comprises a characteristic of a multiple protocol layer. 제49항에 있어서,The method of claim 49, 상기 정보를 제공하는 단계는 상기 정보를 외부 시스템으로 보내는 단계를 포함하는 서비스 모니터링 방법.Providing the information includes sending the information to an external system. 제49항에 있어서,The method of claim 49, 상기 검출된 세션에 관한 정보는 가입자 집단에 관한 정보인 서비스 모니터링 방법.And wherein the information about the detected session is information about a subscriber population. 제49항에 있어서,The method of claim 49, 상기 검출된 세션에 관한 정보는 특정 서비스에 관한 정보인 서비스 모니터링 방법.And the information about the detected session is information about a specific service. 제49항에 있어서,The method of claim 49, 상기 검출된 세션에 관한 정보는 운용자에 관한 정보인 서비스 모니터링 방법.And the information about the detected session is information about an operator. 제49항에 있어서,The method of claim 49, 상기 검출된 세션에 관한 정보는 소정 세션에 관한 상세 기록을 포함하는 서비스 모니터링 방법.And wherein the information about the detected session comprises a detailed record of a given session. 제56항에 있어서,The method of claim 56, wherein 상기 세션에 관한 상세 기록은 상기 세션 중 단지 일부분에 관한 상세 기록을 포함하는 서비스 모니터링 방법.The detailed record about the session comprises a detailed record of only a portion of the session. 제49항에 있어서,The method of claim 49, 상기 검출된 세션에 관한 정보는 동작의 시간 간격에 관한 정보를 포함하는 서비스 모니터링 방법.And the information about the detected session includes information about a time interval of an operation. 무선 전화 네트워크 상의 이동국과 고정 네트워크 상의 서비스 제공자 사이의 패킷 데이터 통신을 처리하는 방법에 있어서,A method for processing packet data communication between a mobile station on a wireless telephone network and a service provider on a fixed network, the method comprising: 서비스에 대한 서비스 논리를 구성하는 단계를 포함하여, 상기 무선 전화 네트워크 및 상기 고정 네트워크를 연관시키는 노드 상에 상기 서비스를 제공하는 단계,Providing the service on a node that associates the wireless telephone network with the fixed network, including configuring service logic for a service, 상기 제공된 서비스와 연관된 통신 세션을 식별하도록 상기 통신을 모니터링하는 단계를 포함하여, 상기 노드를 통해 상기 무선 전화 네트워크와 상기 고정 네트워크 사이를 통과하는 패킷 데이터 통신을 처리하는 단계,Monitoring the communication to identify a communication session associated with the provided service, processing packet data communication passing between the wireless telephone network and the fixed network via the node; 상기 식별된 통신 세션의 검출 포인트를 일치시키는 단계, 및Matching detection points of the identified communication session, and 상기 검출 포인트의 일치에 응답하여 상기 서비스 논리를 실행시키는 단계Executing the service logic in response to matching of the detection points 를 포함하는 패킷 데이터 통신 처리 방법.Packet data communication processing method comprising a. 제59항에 있어서,The method of claim 59, 상기 서비스 논리를 실행하는 단계는 외부 서비스 플랫폼과 통신하는 단계를 포함하고, 상기 패킷 데이터 통신을 처리하는 단계는 상기 외부 서비스 플랫폼으로부터 수신된 정보에 따라 상기 통신을 처리하는 단계를 포함하는 패킷 데이터 통신 처리 방법.Executing the service logic comprises communicating with an external service platform, and processing the packet data communication comprises processing the communication according to information received from the external service platform. Treatment method. 통신 노드에 있어서,In a communication node, 서비스에 대한 검출 포인트를 구성하는 수단을 포함하여, 상기 노드 상에 상기 서비스를 제공하는 수단,Means for providing the service on the node, including means for configuring a detection point for the service, 상기 구성된 검출 포인트와의 일치 여부를 식별하도록 상기 통신을 모니터링하는 수단을 포함하여, 상기 노드를 통과하는 통신을 처리하는 수단, 및Means for processing the communication passing through the node, including means for monitoring the communication to identify a match with the configured detection point, and 상기 구성된 검출 포인트와 일치된 것으로 식별되었을 때 상기 검출 포인트의 서비스에 대한 서비스 논리를 통지하는 수단Means for notifying service logic for a service of the detection point when identified as being matched with the configured detection point 을 포함하는 통신 노드.Communication node comprising a. 통신 노드에 있어서,In a communication node, 서비스에 대한 정보 제공을 수용하도록 구성된 서비스 관리자,A service manager configured to accept the provision of information about the service, 상기 수용된 정보 제공을 기억하는 기억 장치를 포함하여, 상기 서비스 관리자와 연관된 데이터베이스,A database associated with the service manager, including a storage device storing the received information provision; 패킷 데이터 통신을 소정 장치를 통해 통과시키고, 상기 데이터 통신의 구성가능한 이벤트를 검출하는 회로(circuitry), 및Circuitry for passing packet data communication through a predetermined device and detecting a configurable event of said data communication, and 상기 서비스 관리자와 통신하고, 데이터를 통과시키는 회로에 대하여 상기 검출된 이벤트의 통지를 수신하도록 프로그래밍된 서비스 실행 엔진A service execution engine programmed to communicate with the service manager and receive a notification of the detected event to a circuit that passes data 을 포함하는 통신 노드.Communication node comprising a. 제62항에 있어서,The method of claim 62, 상기 데이터베이스는 상세 기록을 위한 기억 장치를 추가로 포함하고, 상기 서비스 실행 엔진은 상기 수신된 통지에 응답하여 상세 기록을 생성하도록 추가로 프로그래밍되는 통신 노드.The database further comprises a storage device for a detailed record, wherein the service execution engine is further programmed to generate a detailed record in response to the received notification.
KR10-2003-7015206A 2001-05-22 2002-05-22 Platform and method for providing wireless data services KR20040036688A (en)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US29256401P 2001-05-22 2001-05-22
US60/292,564 2001-05-22
US29375601P 2001-05-25 2001-05-25
US60/293,756 2001-05-25
US10/066,156 US20020178118A1 (en) 2001-05-25 2002-02-01 Transaction based packet switched data service on a wireless network
US10/061,526 2002-02-01
US10/061,526 US20020177431A1 (en) 2001-05-22 2002-02-01 Packet switched data service on a wireless network
US10/066,156 2002-02-01
US10/061,953 2002-02-02
US10/061,953 US20020176378A1 (en) 2001-05-22 2002-02-02 Platform and method for providing wireless data services
PCT/US2002/016238 WO2002096025A1 (en) 2001-05-22 2002-05-22 Platform and method for providing wireless data services

Publications (1)

Publication Number Publication Date
KR20040036688A true KR20040036688A (en) 2004-04-30

Family

ID=49356613

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7015206A KR20040036688A (en) 2001-05-22 2002-05-22 Platform and method for providing wireless data services

Country Status (1)

Country Link
KR (1) KR20040036688A (en)

Similar Documents

Publication Publication Date Title
US20020176378A1 (en) Platform and method for providing wireless data services
US20020176377A1 (en) Service platform on wireless network
US10320990B2 (en) Device assisted CDR creation, aggregation, mediation and billing
KR100771678B1 (en) Arranging subscriber billing in telecommunication system
CN1757025B (en) Method and apparatus providing prepaid billing for network services using explicit service authorization
US8630630B2 (en) Enhanced roaming services and converged carrier networks with device assisted services and a proxy
CA2819643C (en) End user device that secures an association of application to service policy with an application certificate check
US9582816B2 (en) System and methods for enabling sponsored data access across multiple carriers
US20070147324A1 (en) System and method for improved WiFi/WiMax retail installation management
FI112143B (en) Prepaidtjänst
US20030133552A1 (en) Method and apparatus for integrating disparate telecommunication operational support systems (OSS) and streamlining business processes using a software platform
CN107111597A (en) Method and apparatus for dynamically controlling the customer traffic in the network based on demand charge
US20060007928A1 (en) Flexible traffic rating interworking
CN103460642A (en) Method and apparatus for controlling service traffic in a communication network
NZ523344A (en) Method and apparatus for permitting a mobile station to operate in a visited network
EP1440559A2 (en) Method and system for providing and billing internet services
EP1346517B1 (en) Charge advice in telecommunication systems
CN102362539A (en) Quality of service for device assisted services
EP2466787A1 (en) Dynamic policy-based charging system and method
KR20110116191A (en) Adaptive ambient sevices
CN100370734C (en) WAP service charging method
WO2003047164A2 (en) Control of services in mobile packet data networks
CN106817687A (en) Strategy and charging control fast adjustment method, apparatus and system
KR20040036688A (en) Platform and method for providing wireless data services
US20060008064A1 (en) Flexible traffic rating interworking

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination