KR102535915B1 - 안전한 동적 통신망 및 프로토콜 - Google Patents

안전한 동적 통신망 및 프로토콜 Download PDF

Info

Publication number
KR102535915B1
KR102535915B1 KR1020177023539A KR20177023539A KR102535915B1 KR 102535915 B1 KR102535915 B1 KR 102535915B1 KR 1020177023539 A KR1020177023539 A KR 1020177023539A KR 20177023539 A KR20177023539 A KR 20177023539A KR 102535915 B1 KR102535915 B1 KR 102535915B1
Authority
KR
South Korea
Prior art keywords
packet
data
media node
layer
network
Prior art date
Application number
KR1020177023539A
Other languages
English (en)
Other versions
KR20170140157A (ko
Inventor
리차드 케이. 윌리엄스
이에브겐 버쥰
올레크산드르 홀럽
Original Assignee
리스태트 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 리스태트 리미티드 filed Critical 리스태트 리미티드
Priority to KR1020237016898A priority Critical patent/KR102661985B1/ko
Publication of KR20170140157A publication Critical patent/KR20170140157A/ko
Application granted granted Critical
Publication of KR102535915B1 publication Critical patent/KR102535915B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0464Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload using hop-by-hop encryption, i.e. wherein an intermediate entity decrypts the information and re-encrypts it before forwarding it
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/34Bits, or blocks of bits, of the telegraphic message being interchanged in time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

디지털 데이터의 패킷을 전송하기 위한 보안 클라우드에서, 상기 패킷은 이들이 클라우드의 미디어 노드를 통과할 때 반복적으로 스크램블되고(즉, 그 데이터 세그먼트가 재지정되고) 그 후 언스크램블되며, 분할되고, 그 후 혼합되며, 및/또는 암호화되고, 그 후 해독된다. 상기 패킷을 스크램블링하고, 분할하고, 혼합하고, 및 암호화하는 데 사용되는 방법은 시간과 같은 상태에 따라 변화될 수 있으며, 이에 따라 해커가 패킷의 단편만 볼 수 있다는 점을 고려하면 사실상 해커의 동작을 불가능하게 하며, 데이터를 위장하는 데 사용된 방법은 끊임없이 변하고 있다.

Description

보안 동적 통신 네트워크 및 프로토콜
본 발명은 성능 및 서비스 품질을 최적화하고, 데이터 무결성을 보장하며, 시스템 가동 시간 및 네트워크 안정성을 최대화하고, 프라이버시 및 보안을 유지하도록 설계된 방법 및 장치를 포함하는 통신 네트워크에 관한 것이다.
통신의 개선 수단은 인류의 초기 발단으로부터 문명의 진전에 연료를 공급했다. 도보 또는 말을 타고 여행하는 배달자 및 메신저의 사용으로부터, 기차, 트럭, 및 비행기에 의한 우편 전달을 통해, 전보 및 전신, 전화, 라디오, 텔레비전, 컴퓨터, 휴대폰, 인터넷, 이메일 및 월드 와이드 웹의 출현까지, 최근에는 소셜 미디어, 인터넷 전화, 기계 간(M2M: machine-to-machine) 연결성, 사물 인터넷(IoT: Internet of Things), 및 만물 인터넷(IoE: Internet of Everything)을 통해 더 많은 정보를 얻을 수 있다. 그리고 만물 인터넷의 통신은 항상 시대의 최신 기술의 개발에 주도적 역할을 했다. 사용된 각각의 새로운 통신 기술에 따라, 연결된 사람수와 정보가 전송되는 비율도 증가되었다.
이러한 추세의 영향은 역사 상 그 어느 때보다도 사람들이 더 많이 연결되어, 사람들은 그들이 접촉하고자 의도한 사람에게만 그 사적, 개인, 가족, 및 금융 정보를 안전하고 신뢰성 있게 전달하기 위해 통신 기술을 신뢰하고 의존하고 있다. 지식과 정보는 이제 수백만 명의 사람들에게 수 초 만에 배포될 수 있으며, 친구와 가족은 버튼을 누르는 것만큼이나 일상적으로 세계 곳곳에서 중간에 서로 접촉할 수 있다. "세상은 매우 작은 장소가 되었다"라고 종종 말한다.
이러한 진보는 모든 사람에게 대단히 유익하지만, 기술에 대한 우리의 의존도가 높다는 부정적인 결과도 있다. 예를 들어 지진이나 악천후 중에 통신 시스템이 수행을 실패하였을 때, 일시적일지라도 "언플러그드(unplugged)"에 의해 사람들이 혼란스럽거나 당황하게 된다는 것은 놀라운 일이 아니다. 따라서 통신 시스템 또는 매체의 서비스 품질(QoS: quality of service)는 통신 네트워크의 성능의 중요한 측정치이다. 사람들의 마음의 평화, 금융 자산, 신원, 심지어 그들의 삶까지도 믿을 수 있고 안전한 통신에 의존한다.
통신 네트워크의 다른 주요 고려 사항은 프라이버시, 안전, 및 보안을 이를 사용하는 클라이언트에게 보장하는 능력이다. 통신 기술이 진화함에 따라, 장난을 유발하고, 시스템을 혼란시키며, 돈을 훔치거나, 우연히 또는 악의적으로 타인에게 해를 입히고자 의도하는 범죄자 및 "해커(hacker)"의 정교함도 진화했다. 신용카드 사기, 도난당한 암호, 신분 도용, 및 기밀 정보, 개인 사진, 파일, 이메일, 문자 메시지, 개인적인 트윗의 무단 공개(당황스럽게 하거나 피해자를 협박하는 도용)는 단지 현대 사이버-범죄의 몇 개의 예에 불과하다.
오늘날의 개방형 통신 네트워크에서 보안 문제의 유행 비율을 밝히기 위해, 본 특허출원 당시의 프라이버시 침해 및 사이버 범죄의 주목할만한 사례는 다음과 같다(시간 순서대로 나열).
- "표적: 도난당한 정보가 최소한 7천만 명에 이른다". CNBC, 2014년 1월 10일
- "해커가 스마트 프릿지(fridge)를 만들고 TV가 악의적인 이메일을 보냈다". BGR(www.bgr.com), 2014년 1월 20일
- "해킹된 서모스탯으로 네스트 구글 프라이버시 행 재개(Nest Google Privacy Row Resumes)", 슬래시 기어[Slash Gear(www.slashgear.com)], 2014년 1월 24일
- "계정 도용은 퀘스천 라인(Question Line)에 라인의 데이터 보안을 요구한다. 무료 통화 및 메시징 애플리케이션인 라인(Line)은 최근 데이터 보안 위반에 휩싸였다. 상기 애플리케이션은 계정 사용자가 아닌 다른 사람에 의해 불법적으로 액세스한 수백 개의 사용자 계정을 보았다". 닛케이 아시안 리뷰(Nikkei Asian Review), 2014년 7월 2일
- "NSA 데이터 스윕(NSA Data Sweep)에 포착된 보통의 미국인이 클레임을 보고하였다". 에이피(AP), 2014년 7월 6일
- "스마트 LED 전구가 WiFi 패스워드를 누설한다". BBC 뉴스, 2014년 7월
- "6명의 사람들이 스터브허브 스캠(StubHub Scam)에 프라임 티켓(prime ticket)을 부과했다. 스터브허브는 도난당한 패스워드 및 신용카드 번호로 팝뮤직 콘서트와 양키스 게임을 위해 수천 장의 티켓을 사고파는 해커들의 표적이 되었다고 뉴욕 당국은 말했다". 블룸버그(Bloomberg), 2014년 7월 24일
- "연구는 해킹에 매우 민감한 '사물 인터넷'을 나타내고 있다. "인터내셔널 비즈니스 타임즈(www.ibtimes.com), 2014년 8월 4일
- "러시아 해커는 10억 개의 인터넷 패스워드를 모았다". 뉴욕 타임즈 2014년 8월 5일
- "미국 비밀 정부 결정판(U.S. Secrets, Government Concludes)을 나타내는 뉴 리커(New Leaker)" CNN, 2014년 8월
- "15초의 해커 루트 구글의 네스트 서모 스탯", 더 인콰이어러(The Enquirer)(www,theinquirer.net), 2014년 8월 11일
- "표적을 타격하는 동일한 멜웨어에 의해 해킹된 유제품 여왕", 크리스티앙 사이언스 모니터(Christian Science Monitor), 2014년 8월 29일
- "누드 사진 누수의 유명인 희생자- 아이클라우드(iCloud) 계정의 보안 취약성", CBS 뉴스, 2014년 9월 1일
- "홈 디포(Home Depot)는 신용카드 분쟁의 최신 표적일 수 있다. 홈 디포 분쟁은 표적보다 더 클 수 있다.(3주에 걸쳐 도난당한 40M 카드)", 포춘(Fortune), 2014년 9월 2일
- "신비한 가짜 핸드폰 타워가 미국 전역에 걸쳐 전화를 가로채고 있다. "비즈니스 인사이더(Business Insider), 2014년 9월 3일
- "해킹 공격, 은행에서 소매업으로, 사이버 전쟁의 징후 ?". 야후 파이낸스(Yahoo Finance), 2014년 9월 3일
- "홈 디포는 미국과 캐나다 상점에서 해킹당한 지불 시스템을 확인한다". 폭스 뉴스(Fox News), 2014년 9월 9일
- "야후는 감시에 대해 미국 정부와 다투고 있다. "CBS/AP, 2014년 9월 11일
- "당신의 의료 기록은 해커에게 당신의 신용카드보다 더 가치 있다. "로이터 통신, 2014년 9월 24일
- "레드 얼럿(Red Alert): HTTP S가 해킹당했다. SSL/TLS(BEAST) 공격에 대한 브라우저 활용은, 수억 명의 사람들이 매일 의존하는 연결을 손상시키기 때문에 최악의 해킹에 속할 것이다". 인포월드(InfoWorld), 2014년 9월 26일
- "소니 사이버 공격, 첫 번째 골칫거리, 신속하게 폭풍에 빠져 들었다". 뉴욕 타임즈, 2014년 12월 30일
사이버 범죄, 보안 침해, 신분 절도, 및 프라이버시 침해가 점증하고 있는 것처럼 보이는 가운데, "이러한 모든 사이버-공격은 어떻게 가능하며, 이를 막기 위해 무엇이 실행될 수 있을까?"라는 질문이 제기된다. 사회가 더 높은 프라이버시 및 보안을 추구하는 동시에, 소비자 또한 더 나은 연결성, 더 저렴한 고품질 통신, 및 금융 거래 수행 시의 더욱 편리함을 원한다.
현대의 통신 네트워크, 데이터 저장소 및 연결된 디바이스의 성능 제한과 취약점을 이해하기 위해, 오늘날의 전자, 라디오, 및 광 통신이 파일, 이메일, 텍스트, 오디오, 및 비디오 영상을 포함하는 데이터를 어떻게 동작, 전송, 및 저장하는지를 이해하는 것이 제일 중요하다.
회선 교환형 전화망 동작
전자 통신은 와이어, 라디오, 마이크로파 또는 광섬유 링크의 네트워크 내에 연결된 다양한 하드웨어 구성요소 또는 디바이스를 포함하고 있다. 정보는 이 네트워크를 통해 전기 또는 전자기 에너지를 전송하고, 또한 데이터 스트림 내에 정보 "콘텐트"를 매립 또는 인코딩하기 위해 다양한 방법을 사용함으로써, 하나의 디바이스로부터 다른 디바이스로 전송된다. 이론적으로, 물리학의 법칙은 이러한 네트워크의 최대 데이터 전송률을 빛의 속도로 설정하지만, 그러나 대부분의 경우에 데이터 인코딩, 라우팅 및 트래픽 제어, 신호 대 노이즈 품질, 및 전기, 자기 및 광학 노이즈, 불필요한 기생의 극복에 대한 실질적인 제한 사항은 통신 네트워크의 기능을 이상적인 성능의 일부로 제한하는 정보 흐름을 방해하거나 억제한다.
역사적으로, 전자 데이터 통신은 전기적으로 연결된 2개 또는 그 이상의 디바이스 사이 또는 이들 사이에서 통신 "회로"를 형성하는 전용 "하드와이어형(hardwired)" 전기 연결을 사용하여 먼저 달성되었다. 전신의 경우에 있어서, 직류(DC) 수동으로 전기 회로를 만들고 끊기 위해, 기계적 스위치가 사용되었으며, 솔레노이드를 자화시키고 다시 금속 레버를 움직여, 청취 디바이스 또는 "릴레이"가 발신자가 스위치를 누른 동일한 패턴으로 동일한 위치에서 클릭되게 한다. 그 후, 정보를 펄스 스트림으로 인코딩하기 위해, 상기 발신자는 합의된 언어, 즉 모스 부호(Morse code)를 사용하였다. 청취자는 마찬가지로 점(dot)과 대시(dash)라고 불리는 일련의 길고 짧은 펄스인 모스 부호를 이해하여, 메시지를 해석할 필요가 있다.
나중에, 알렉산더 그레이엄 벨(Alexander Graham Bell)은 전기적 연결을 통해 사운드를 전달하기 위해, 이제 교류 전류(AC)로 언급되는 "기복 전류(undulating current)"의 개념을 사용하여 최초의 전화기를 개발하였다. 전화 네트워크는 전기 회로에 의해 연결되는 2개의 자기 변환기로 구성되며, 각각의 자기 변환기는 고정된 영구 자석 인클로저에 의해 둘러싸인 가동형 다이어프램 및 코일 또는 "음성 코일(voice coil)"로 구성된다. 변환기에서 말할 때, 사운드로부터의 공기 압력의 변화는, 음성 코일을, 코일에 AC 전류를 유도하는 둘러싸고 있는 자기장 내에서 전후로 이동시킨다. 청취자 쪽에서, 음성 코일에 흐르는 시변-전류(time-varying)는 파형 및 둘러싸는 자기장에 대향하는 동일한 파형 및 시변-자기장을 유도하여, 음성 코일을 사운드를 포착하는 변환기와 동일한 방식으로 전후로 이동시킨다. 결과적인 이동은 사운드를 포착하는 디바이스와 유사한 방식으로 사운드를 재생한다. 현대 토착어에 있어서, 변환기가 사운드를 전류로 변환할 때, 이는 마이크로서 동작하며, 또한 변환기가 전류를 사운드로 변환할 때, 이는 스피커로서 동작한다. 또한, 전도된 전기 신호는 공기 중에서 요소 압력파, 즉 사운드로서 운반되는 오디오 파형과 유사하기 때문에, 오늘날 이러한 전기 신호는 아날로그 신호 또는 아날로그 파형으로 지칭된다.
전술한 바와 같이, 변환기는 말하기와 듣기 모두에 사용되기 때문에, 대화의 두 당사자는 모두 말할 때와 들을 때를 알아야만 한다. 이러한 시스템에서 스트링(string)에 의해 연결된 2개의 주석 캔과 유사하게, 발신자는 동시에 말하고 들을 수 없다. 반이중(half-duplex)" 모드로 불리는 이러한 단방향 동작은 고풍으로 들릴 수도 있지만, 이는 현대의 워키토키(walkie-talkies)에서, 그리고 "푸시 투 토크(push-to-talk)" 또는 PTT 라는 이름으로 현대의 전화기술에서 무선 통신에 아직도 실제로 사용되고 있다.
나중에, 별도의 마이크 및 스피커를 구비한 전이중(full-duplex)(즉, 양방향 또는 송수신) 전화가 일상적으로 되어, 당사자들은 동시에 말하고 들을 수 있다. 그러나 현대라 해도, 피드백, 수신자의 사운드가 그 마이크에 의해 수신되어 발신자에게 피드백되고 또한 발신자에게 피드백되어, 혼란스러운 에코와 때로는 불편한 휘파람 사운드가 발생하는 상태-특히, 장거리 전화 통신을 괴롭히는 문제를 방지하기 위해, 전이중 전화 통신을 동작하는 데에도 주의가 요구된다.
초기의 전신 및 전화 시스템은 다른 문제, 프라이버시 중 하나로 어려움을 겪었다. 이들 초기의 통신 네트워크의 화신(incarnation)에 있어서, 네트워크에 연결된 모든 사람들은 원하지 않더라도, 회선 상에 통신되는 모든 것을 들었다. 농촌의 전화 네트워크에서, 이들 공유 라인은 "당사자 회선(party line)"으로 알려져 있었다. 그 후, 전화 시스템은 전용 회선이 전화 지점 사무실을 개별적인 클라이언트의 전화에 직접 연결한 다중-회선 네트워크로 급속하게 발전했다. 지점 교환 사무실 내에서, 시스템 운영자는 점퍼 케이블을 사용하여 교환대를 통해 발신자를 서로 수동으로 연결하고, 또한 첫 번째 "장거리"전화 호출 서비스를 형성하기 위해 한 지점을 다른 지점에 연결하는 능력도 가졌다. 전화 "스위치" 네트워크를 형성하는 큰 릴레이 뱅크(bank of relay)는 점진적으로 인간 운영자를 대체했으며, 이는 이어서 진공관을 포함하는 전자 스위치로 대체되었다.
벨 연구소(Bell Laboratories)가 1950년대 후반에 트랜지스터를 개발한 후, 전화 스위치와 지점 교환은 그 취약하고 뜨거운 진공관을, 트랜지스터 및 궁극적으로 집적 회로를 포함하는 차가운 고체-상태 디바이스로 대체하였다. 네트워크가 커짐에 따라, 전화번호는 국제 전화를 처리하기 위해 7단위의 접두어와 개인 번호로부터 지역 코드 및 궁극적으로 국가 코드를 포함하도록 단위가 확장되었다. 곧 음성 호출을 운반하는 구리 케이블이 전 세계를 커버하고 바다를 건넜다. 네트워크의 크기에도 불구하고, 동작 원리는 일정하게 유지되었으며, 그 호출은 아날로그 신호에 의해 운반되는 음성을 구비한 발신자와 전화 스위치에 의해 결정되는 호출의 라우팅 사이에 직접적인 전기 연결 또는 "회로"를 표시하였다. 이러한 전화 시스템은 결국 "회선 교환형 전화망"으로 알려지거나 또는 구어체로 일반 구식 전화 시스템 또는 POTS로서 알려지게 되었다. 회선 교환형 전화기술은 1980년대에 절정에 이르렀고, 그 이후로 다음 섹션에 기재되는 "패킷 교환형 전화기술"로 가차 없이 대체되었다.
전화 네트워크와 거의 평행하게 진화하면서, 정규 라디오 통신이 1920년대에 라디오 방송으로 시작되었다. 상기 방송은 단방향이었고, 지정의 정부-허가를 받은 주파수의 라디오 방송국으로부터 송출되었으며, 또한 지정의 방송 주파수 또는 라디오 방송국에 맞춰진 임의의 많은 라디오 수신기에 의해 수신된다. 방송된 신호는 진폭 변조(amplitude modulation)(AM)를 사용하거나 또는 나중에 허가된 라디오 스펙트럼의 전용 부분 상의 각각의 주파수 변조(frequency modulation)(FM) 방법에 의해, 아날로그 신호를 운반하였다. 미국에서, 연방 통신위원회 또는 FCC는 이러한 허가된 대역의 할당 및 규제를 관리하도록 발전했다. 방송 컨셉은 처음에 흑백 콘텐트를, 후에 컬러를 포함하는 무선 전송을 사용하는 공용 텔레비전 프로그램으로 확장되었다. 나중에, 마이크로파 위성 접시에 의해 또는 동축 케이블을 통해 사람들의 가정에 텔레비전 신호도 운반될 수 있었다. 지정 방송 주파수에 맞춰진 임의의 청취자가 방송을 수신할 수 있기 때문에, 이러한 단방향 다중-청취자 통신을 위해 이제 "멀티캐스트(multicast)"라는 용어가 사용되고 있다.
라디오 방송의 출현과 동시에, 첫 번째 양방향 통신이 상업용 및 군용 해양 선박에서 시작되었으며, 또한 2차 세계 대전 당시 라디오는 워키-토키 손 파지형 라디오 송수신기, 송신기와 수신기를 단일의 유닛으로 조합한 디바이스로 발전했다. 전화기술과 마찬가지로, 초기의 양방향 라디오 송신은 "단방향(simplex)" 모드로 동작하여, 다른 것은 듣기만 하고 오직 하나의 라디오만 단일의 라디오 채널 상에 방송하는 것을 허용하였다. 상이한 주파수에서 송신기와 수신기를 조합함으로써, 라디오 링크의 각각의 단부에서 동시 송신 및 수신이 가능하게 되어, 두 당사자 사이에 전이중 모드 통신을 가능하게 했다.
그러나 다중 당사자로부터의 중복 전송을 방지하기 위해, 반이중 또는 PTT(push-to-talk)라 불리는 프로토콜이 채널 관리를 위해 일반적으로 사용되어, 선착순에 기초하여 누구나 지정 채널 상에 독점적으로 전송하게 한다. 아날로그 변조를 사용하는 산업 표준 라디오 타입은 아마추어(햄 또는 CB) 라디오, 해양 VHF 라디오, 항공 교통 제어를 위한 UNICOM, 및 개인용 워키-토키 통신을 위한 FRS를 포함한다. 이들 양방향 라디오 네트워크에 있어서, 라디오는 그 데이터를 지정 주파수 "채널"에 대해 중앙 라디오 타워(radio tower)에 송신하며, 상기 라디오 타워는 타워가 라디오를 증폭하고 반복하여, 이를 전체 라디오 네트워크에 송신한다. 방송 영역에 대해 정보를 운반하는 사용 가능한 주파수의 번호는, 시스템의 총 대역폭 및 라디오 네트워크 상에서 한 번에 독립적으로 통신할 수 있는 사용자 수를 설정한다.
많은 수의 발신자를 취급하도록 라디오 네트워크의 전체 용량을 확장하기 위해, 넓은 면적이 작은 부분 또는 라디오 "셀"로 분리된 셀룰러 네트워크의 개념이 1970년대에 입증되고, 그 후 10년 내에 널리 보급되었다. 상기 셀룰러 개념은 라디오 타워의 방송 범위를 더 작은 영역, 즉 더 짧은 거리로 제한하고, 따라서 동일한 주파수 대역을 재사용하여, 상이한 셀에 존재하는 상이한 발신자를 동시에 취급할 수 있게 하는 것이었다. 그렇게 하기 위해, 하나의 셀로부터 인접한 셀 내를 지나가는 발신자의 핸드오프(handoff)를 "누락(dropping)" 없이 그리고 갑자기 호출을 분리하지 않고 관리하도록, 소프트웨어가 생성되었다. 라디오 및 텔레비전 방송과 마찬가지로, POTS, 양방향 라디오처럼, 초기의 셀룰러 네트워크는 사실상 아날로그였다. 호출 라우팅을 제어하기 위해, 적절한 무선 전기 연결을 결정하도록 전화번호 시스템이 채택되었다. 이 선택은 또한 새로운 무선 셀룰러 네트워크를 "유선" 일반 구형 전화 시스템에 원활하게 연결하여, 두 시스템을 통해 상호 연결 및 상호 작용을 제공한다는 이점을 갖고 있었다.
1980년대에 시작되어, 라디오 및 TV 방송과 함께 전화 및 라디오 통신은 전력 소비를 줄이고 배터리 수명을 늘리기 위해, 더 좋은 신호 대 노이즈 비율로 품질을 향상시키기 위해, 그리고 데이터 및 텍스트를 음성과 함께 운반할 필요성의 어드레싱을 시작할 필요성에 의해 구동되는 아날로그에서 디지털로의 통신 방법 및 포맷으로의 냉혹한 이전을 시작하였다. 일 대 일(one-to-one), 일 대 다(one-to-many), 및 다 대 다(many-to-many) 통신 모드를 동시에 사용할 수 있는, EDACS 및 TETRA 와 같은 라디오 포맷이 나왔다. 또한, 셀룰러 통신은 TV 방송이 그랬던 것처럼, GPRS 와 같은 디지털 포맷으로 신속히 전환되었다.
2010년대까지, 대부분의 국가는 모든 아날로그 TV 방송을 중단했거나, 또는 중단 과정에 있었다. 방송 텔레비전과 달리, 케이블 TV 통신업체는 디지탈 포맷으로 전환할 것이 요구되지 않고, 2013년까지 아날로그 및 디지털 신호의 하이브리드 합성물을 유지하였다. 디지털로의 그 궁극적인 이전은 정부 표준에 의해서가 아니라, 그 네트워크의 허용 가능한 채널의 수를 확장하고, HD 및 UHD 콘텐츠를 전달할 수 있고, 더 많은 페이퍼 뷰(pay-per-view)[PFV, "유니캐스트(unicast)"로도 알려짐]를 제안하고, 그리고 그 클라이언트에게 고속 디지털 연결 서비스를 가능하게 하기 위한 상업적인 이유에 의해 유발되었다
인터넷의 출현으로, 더 구체적으로는 인터넷 프로토콜(IP)의 광범위한 채택으로, 아날로그로부터 디지털 포맷으로 글로벌 통신 네트워크의 이전을 동일시하는 것이 일반적이지만, 디지털 포맷으로의 전환은 전화기술에서 IP의 상업적 수용을 선행하여, IP 및 "패킷-교환형 네트워크"(다음 섹션에 기재된)로의 보편적인 이전을, 촉진시키지는 않았지만, 가능하게 하였다.
교환-교환형 전화기술의 결과적인 진화는 "공공 교환 전화망" 또는 유사하지 않은 기술을 각각 포함하는 라디오, 셀룰러, PBX, 및 POTS 연결 및 서브-네트워크의 합병을 포함하는 PSTN으로서 도 1에 개략적으로 도시되어 있다. 네트워크는 고 대역 트렁크 라인(2)에 의해 연결되고, 또한 예를 들어 유선 연결(4)을 통해 POTS 게이트웨이(3), 셀룰러 네트워크(17), PBX(8), 및 양방향 무선 네트워크(14)에 연결된 PSTN 게이트웨이(1A, 1B)를 포함한다. 각각의 서브-네트워크는 독립적으로 동작하여, 유사한 종류의 디바이스를 구동한다. 예를 들어, 시골 지역 사회에서 여전히 흔한 POTS 게이트웨이(3)는, 비틀린 구리 와이어쌍(7)에 의해 일반 아날로그 전화기(6) 또는 대안적으로 무선 전화기(5)에 연결된다. 전형적으로 디지털 강화 무선 통신 표준 또는 DECT를 채용한 무선 전화기(5), 그 초 저전력 변형예(DECT-ULE) 또는 그 전구체(CT2)는 전형적으로 0.9, 1.9, 2.4 및 5.8 GHz 에서 반송파 주파수를 구비한 전용의 폐쇄된 시스템 RF 시스템이다. 순수 DECT 전화기는, 무선 RF 기반 디바이스임에도 불구하고, 셀룰러 네트워크에 직접 액세스할 수 없다.
PBX(8)는 유선 데스크탑 전화기(9), 회의 호출을 위한 스피커폰(10), 및 무선 연결(12)에 의해 무선 또는 무선 로밍 전화기(13)에 연결된 사설 무선 네트워크 기지국(11)을 포함하여, 회사 사무실에 사용되는 임의의 디바이스의 개수를 제어한다. 무선 로밍 전화기(13)는 통상적인 무선 전화기에 비즈니스 중심의 강화를 나타내어, WiFi 연결부와 협력하기 위해 또는 일본의 개인 핸드폰 시스템 또는 PHS의 경우 높은 트래픽 회랑(corridor)에서 그리고 도쿄 신주쿠와 같은 밀집하여 거주하는 도시의 비즈니스 영역에서 회사의 외부에 있는 공용 마이크로셀룰러 네트워크에 액세스하기 위해 전화기 액세스를 제공한다. 대역폭, 전송 범위, 및 배터리 수명은 PHS 제품에서 극도로 제한된다.
또한, PSTN은 AMPS, CDMA, 및 GSM 아날로그 및 디지털 프로토콜을 실행하는 회선 교환형 셀룰러 네트워크(17)에 연결된다. 셀룰러 타워(18)를 통해, 회선 교환형 셀룰러 네트워크(17)는 표준화된 셀룰러 무선 주파수(28)를 이용하여 휴대폰(19A)과 같은 모바일 디바이스에 연결한다. GSM의 강화인 GPRS 네트워크의 경우, 회선 교환형 셀룰러 네트워크(17)는 저속 데이터 및 음성을 동시에 전달하는 태블릿(19B)에도 연결할 수 있다. TETRA 및 EDACS 와 같은 양방향 무선 네트워크(14)는 고-전력 무선 타워(15) 및 RF 링크(28)를 통해 PSTN을 손 파지형 라디오(16A) 및 대형의 인-대시 및 데스크탑 라디오(16B)에 연결한다. 경찰차, 구급차, 앰블런스, 구급 의료대원, 소방서, 및 심지어 항만 당국에 의해 통상적으로 사용되는 이러한 양방향 라디오 네트워크는, 전문 통신 네트워크 및 서비스로도 지칭되며, 소비자보다는 정부, 지방자치 당국, 및 응급 대응자를 표적으로 한다(참고: 여기에 사용되는 바와 같이, "데스크탑" "태블릿" 및 "노트북"이라는 용어는 이들 이름을 갖는 컴퓨터의 약식 참조로서 사용된다)
호출 라우팅을 완료하기 위한 전형적인 전화번호를 사용하는 POTS 게이트웨이(3), 셀룰러 네트워크(17), 및 PBX(8)와는 달리, 양방향 라디오 네트워크(14)는 타워(15)와 이것이 작용하는 모바일 디바이스 사이에 무선 링크를 설정하기 위해, (전화번호보다는) 전용의 RF 라디오 채널을 사용한다. 따라서 전문적인 무선 통신 서비스가 뚜렷하게 존재하며, 또한 소비자 셀룰러 전화기 네트워크와는 독특하게 다르다.
도 1은 다양한 기술의 서브-네트워크를 상호 연결하는 PSTN 네트워크의 융통성을 그래픽으로 도시하고 있다. 오늘날의 회선 교환형 네트워크의 고유의 약점인 서브-네트워크 간 상호 동작 능력을 형성하는 것은 매우 다양하다. 다양한 서브-네트워크가 임의의 통상적인 제어 프로토콜 또는 언어와 통신하지 않기 때문에, 또한 각각의 기술이 데이터 및 음성의 전송을 상이하게 취급하기 때문에, PSTN 백본 또는 트렁크 라인(trunk line)을 통해 전화를 걸 수 있는 그 제한된 능력을 제외하고는, 다양한 시스템이 기본적으로 호환되지 않는다. 예를 들어, 뉴욕시의 세계 무역 센터에 대한 9월 11일 테러 목록 공격 중, 재난과의 싸움에 도움을 주기 위해, 단지 그 라디오 통신 시스템 및 워키-토키를 배우기 위해, 맨해탄으로 집결한 미국 전역의 많은 응급 요원들은 다른 주 및 도시의 자원 봉사자들과 호환할 수 없었기 때문에 구호 노력에 대한 중앙 명령 및 통제를 관리하는 것을 불가능하게 하였다. 그 라디오의 통신 프로토콜에 표준화가 없기 때문에, 라디오는 서로 간단히 연결할 수 없었다.
더욱이, 특히 아날로그 또는 비 보안 디지털 프로토콜을 사용하는 회선 교환형 전화 네트워크의 직접적인 전기 및 RF 연결에 의해, RF 스캐너를 구비한 해커가 활성 통신 채널을 찾고 그 당시에 발생하는 대화를 탐색, 샘플링, 청취, 또는 차단하는 것은 간단한 일이다. 통신하는 당사자 사이에 PSTN 이 "지속적으로 연결된" 링크 또는 회로를 형성하기 때문에, 연방 법원이 주문한 도청 하에 동작하는 정부에 의해 합법적으로, 또는 불법적인, 금지된, 또는 공인되지 않는 감시를 수행하는 사이버 범죄 또는 정부에 의해 형사법적으로, 해커가 연결을 식별하고 "도청"하기에 충분한 시간이 있다. 합법적인 그리고 불법적인 스파이 행위 및 감시의 정의와 네트워크 운영자에 의한 협력 준수 의무는 국가마다 크게 다르며, 또한 국제적 경계를 넘어서 운영되고 있는 구글, 야후, 애플과 같은 글로벌 기업 사이의 논쟁이 가열되고 있다. 통신 네트워크 및 인터넷은 글로벌하며, 또한 국경이나 경계도 없지만, 이러한 전자 정보를 지배하는 법률은 당시 국내 및 국제적인 통신 및 상업을 제어하는 정부의 관할권에 국한되어 있다.
적법성이나 윤리와 관계없이, 오늘날 모든 도로 또는 지하철의 거리 모서리 및 위에 있는 유비쿼터스 보안 카메라의 모니터링부터 다양한 국가의 국가 보안국 및 기관에 의해 수행되는 정교한 해킹 및 코드 균열에 이르기까지의 범위에 속하는 전자 도청 및 감시는 일상적인 것이다. 모든 네트워크가 취약하지만, PSTN의 오래된 그리고 취약한 보안 규정은 이들을 해킹에 특히 용이하게 한다. 따라서 심지어 현대의 보안 모뎀 네트워크에 연결된 PSTN은 전체 시스템에서의 약점을 나타내어, 보안 위반 및 사이버 범죄에 약점을 생성한다. 그럼에도 불구하고, 수십 년은 아니더라도, 글로벌 PSTN 네트워크를 퇴역시키고 이를 IP-기반 패킷 교환형 통신으로 완전히 대체하는 데 수 년이 걸릴 것이다. 이러한 패킷-기반 네트워크(이하에 기재됨)는 PSTN 보다는 현대적이지만, 여전히 안전하지 않으며, 보안 파괴, 해킹, 서비스 거부 공격, 및 프라이버시 침해에 노출된다.
패킷 교환형 통신 네트워크 운영
스트링에 의해 연결된 2개의 주석 캔이 현대의 회선 교환형 전화의 동작에 대한 은유를 나타낸다면, 우체국은 패킷 교환형 통신 네트워크에 대한 유사한 은유를 나타낸다. 이러한 접근법에 있어서, 텍스트, 데이터, 음성, 및 비디오는 파일 및 디지털 데이터의 스트림으로 변환되고, 이런 데이터는 그 후 데이터의 양자화된 "패킷"으로 파싱되어 네트워크를 통해 전달된다. 전달 메커니즘은 데이터 패킷이 어디로 가고 어디에서 왔는지를 독특하게 식별하는 전자 어드레스에 기초하고 있다. 또한, 포맷 및 통신 프로토콜은 이것이 사용될 프로그램 또는 애플리케이션, 및 패킷을 운반하는 물리적 링크 및 전기 또는 라디오 연결을 촉진시키는 하드웨어에 지정한 콘텐트를 포함하는 패킷에 포함된 데이터의 특성에 따라 정보를 포함하도록 설계된다.
1960년대에 태어난 패킷 교환형 네트워크의 개념은 스푸트니크(Sputnik) 냉전의 편집 시대에 생성되었다. 그 때 미 국방부(US Department of Defense, DoD)는 우주-기반 핵 미사일 발사가 미국의 전체 통신 기반시설을 분쇄하여, USSR 선제 공격에 대처할 능력을 상실할 수 있고, 또한 이런 공격에 대한 취약성이 실제로 하나를 도발시킬 수 있다는 우려를 표명했다. 따라서 DoD는 군대 시설 간에 정보를 전달할 수 있는 네트워크의 능력이 지정 데이터 링크 또는 심지어 네트워크 내의 수많은 링크를 파괴함으로써 방해받을 수 없는 중복 통신 시스템 또는 격자형(grid-like) "네트워크"의 개발을 후원했다. ARPANET으로 알려진 이 시스템은 인터넷의 부모와 모뎀 디지털 통신의 유명한 모태가 되었다.
패킷 교환형 네트워크의 생성에도 불구하고, 인터넷의 폭발적인 성장은 처음 사용하기 쉬운 웹 브라우저인 Mosaic, 하이퍼텍스트 정의 웹 페이지의 출현, 월드 와이드 웹(World Wide Web)의 신속한 채택, 및 이메일의 광범위한 사용이 인터넷 플랫폼의 글로벌 수용을 전체적으로 확산시켰을 때의 1990년대까지는 발생하지 않았다. 어느 나라나 정부도 이를 중지시킬 수 없기 때문에(또는 심지어 그 글로벌 연계를 완전히 인식하지 못했기 때문에), 또한 그 사용자 기반은 그 새로이 획득된 개인용 컴퓨터를 사용하는 소비자를 포함하고 있기 때문에, 그 기본적인 견해, 중앙 제어의 결여, 또는 중앙 메인프레임에 대한 필요성 중 하나는 부분적으로는 인터넷을 유비쿼티(ubiquity)로 추진하였다.
인터넷 성장의 다른 의미 있는 영향은 네트워크를 통해 데이터 패킷을 라우팅하는 데 사용된 인터넷 프로토콜(IP)의 표준화였다. 1990년대 중반까지, 인터넷 사용자들은 데이터를 운반하는 데 사용될 수도 있음을 인식하였으며, 바로 그 후 "Voice over Internet Protocol" 또는 VoIP 가 탄생했다. 그 개념은 이론적으로 인터넷을 갖는 누구라도 자유롭게 인터넷에 대해 음성에 의해 통신할 수 있게 했지만, 네트워크를 횡단하는 보급 지연, 즉 대기 시간(latency)은 음성 품질을 빈약하게 하였으며, 또한 자주 난해하게 하였다. "라스트 마일(last-mile)"에서의 연결 품질을 개선하도록 고속 이더넷 링크, 고속 WiFi 연결성, 4G 데이터의 채택으로 지연 시간이 개선되었지만, 인터넷 자체는 데이터 패킷의 정확한 전달을 보장하기 위해 생성되었으며, 패킷을 전달하는 데 필요한 시간을 보장하지 않으며, 즉 인터넷은 실시간 네트워크로서 운영되도록 생성되지 않았다.
따라서 값 비싼 장거리 통신업체 또는 "텔코(telco)"를 대체하기 위해 인터넷을 사용하려는 꿈은 스카이프(Skype), 라인(Line), 카카오 톡(Kakao Talk), 바이퍼(Viper), 등과 같은 "오버 더 탑(over-the-top)"(OTT) 제공업체의 유용성에도 불구하고 크게 미흡한 실정이다. OTT 전화기술은 제어되지 않은 네트워크 대기 시간, 불량한 음질, 통화 끊김, 에코, 잔향, 피드백, 고르지 못한 사운드, 및 때로는 호출을 시작할 수 없음으로부터 나타나는 낮은 서비스 품질(QoS)로 고통 받고 있다. OTT 통신의 빈약한 성능은 본질적으로 VoIP 기반 프로토콜의 약점이 아니라, OTT 통신업체가 데이터가 취하는 경로 또는 통신이 만나는 지연을 제어할 수 없는 네트워크 자체의 약점이다. 본질적으로, OTT 통신업체는 성능 또는 QoS를 보장할 수 없으며, 그 이유는 OTT 통신이 인터넷 히치하이커로서 동작하기 때문이다. 역설적으로, 오늘날 VoIP 기반 통신을 가장 잘 활용할 수 있는 회사는 전용의 낮은 대기 시간 하드웨어-기반 네트워크를 갖는 장거리 전화 통신업체이며, 바로 텔코가 그렇게 하기 위한 최소의 동기를 갖고 있다.
그 고유의 네트워크 중복을 제외하고, 패킷 교환형 통신의 가장 큰 강점 중 하나는, 데이터가 인터넷 프로토콜과 일치하는 패킷으로 배치되고, 또한 통신 디바이스가 인터넷에 연결되고 링크되어 있는 한, 임의의 소스로부터 임의의 목적지로 정보를 운반하는 그 능력이다. 인터넷 프로토콜은, 어떤 정보가 운반되는지 또는 어떤 애플리케이션이 이를 사용할 것인지에 대한 관심이나 염려 없이, 페이로드를 그 목적지로 전달하기 위해 네트워크의 능력을 관리하여, 맞춤형 소프트웨어 인터페이스 및 비싼 독점 하드웨어에 대한 임의의 필요성을 모두 피한다. 많은 경우에, 예를 들어 메일 읽기, 브라우저 상에서 웹 페이지 열기, 사진 또는 비디오 보기, 플래시 파일 보기, 또는 PDF 문서 읽기, 등을 위해 심지어 애플리케이션 관련 페이로드조차도 미리 정의된 포맷을 설정한다.
다용도의 파일 포맷이 독점적인 또는 회사-지정의 소프트웨어에 대한 의존을 피하기 때문에, 인터넷은 "컴퓨터"로부터 휴대폰으로, 차량으로부터 가전기기의 범위에 속하는 지금까지 연결된 가장 광범위한 디바이스와 통신할 수 있는 "오픈 소스" 통신 플랫폼으로 간주될 수 있다. 이런 보편적인 연결성을 설명하는 가장 최근의 문구는 "만물 인터넷(IoE) 이다.
도 2는 이러한 인터넷 연결 디바이스의 단지 몇 개의 예를 도시하고 있다. 도시된 바와 같이, 고속 클라우드 서버(21A, 21B, 21C) 및 클라우드 데이터 스토리지(20)를 포함하는 큰 컴퓨터 어레이는, 인터넷 클라우드(22)를 형성하기 위해, 셀 수 없는 다른 서버(도시되지 않음) 사이에서 고 대역폭 연결부(23), 전형적으로 광섬유에 의해 상호 연결된다. 어떤 서버가 클라우드의 일부로 간주되고 어떤 서버가 그렇지 않은지를 정의하는 잘 정의된 경계가 없기 때문에, 클라우드 은유가 적절하다. 1일 및 심지어 분 단위로, 서버는 인터넷의 기능이나 성능에 영향을 주지 않고 유지 관리를 위해 오프라인으로 전환될 수 있을 동안, 온라인으로 있다. 이는 진정한 중복 분산 시스템의 이점이며, 단일의 제어 지점이 없으며, 따라서 단일의 실패 지점도 없다.
클라우드는 임의의 다양한 유선, WiFi 또는 무선 링크를 통해 사용자 또는 연결된 디바이스에 연결될 수 있다. 도시된 바와 같이, 클라우드 서버(21A)는 유선 또는 섬유 링크(24)를 통해 무선 타워(25), WiFi 액세스 포인트(26) 또는 유선 분배 유닛(27)에 연결된다. 이들 "라스트 마일" 링크는 다시 임의의 많은 통신 또는 연결된 디바이스에 연결된다. 예를 들어, 무선 타워(25)는 셀룰러 라디오(28)에 의해 스마트폰(32), 태블릿(33) 또는 연결된 차량(31)에 연결될 수 있으며, 또한 예를 들어 보행자, 개인 차량의 운전자, 법 집행관, 트럭 및 전달 업계의 전문 운전자를 포함하는 모바일 사용자(40)에게 사용될 수 있다. 무선 패킷 교환형 가능한 전화 통신은 4G/LTE(또는, long-term evolution) 뿐만 아니라 HSUPA 및 HSDPA를 포함하는 셀룰러 프로토콜 3G를 포함하며, 심지어 셀이 다른 프로토콜로 동작하더라도 한 셀로부터 다른 셀로 폰 호출을 끊김 없이 핸드오프하는 능력을 포함하여 다양한 셀룰러 프로토콜과의 상호 작용성을 보장하는 네트워크 표준을 지칭한다. 참고: 정의 상, 여기에 사용된 "라스트 마일"은 태블릿, 데스크탑 또는 휴대폰과 같은 임의의 타입의 클라이언트 디바이스와 클라우드 서버 사이의 링크를 지칭한다. 방향 상, "퍼스트 마일(first-mile)"이라는 용어는 때로는 데이터 전송을 시작하는 디바이스와 클라우드 서버 사이의 연결을 지정하는 데 사용되기도 한다. 이러한 경우에, 상기 "라스트 마일" 링크는 "퍼스트 마일" 링크이기도 하다.
근거리 통신을 위해, WiFi 액세스 포인트(26)는 WiFi 라디오(29)에 의해 스마트폰(32), 태블릿(33), 노트북(35), 데스크탑(36) 또는 연결된 기기(34)에 연결되며, 또한 가정, 카페, 레스토랑, 및 사무실의 로컬 무선 애플리케이션에 사용될 수 있다. WiFi는 단일 반송파 주파수 사양 802.11a, 802.11b, 802.11g, 802.11n을 위한 그리고 가장 최근에는 이중 주파수 대역 802.11ac 포맷을 위한 IEEE 정의된 표준에 따라 동작하는 통신을 포함한다. 간단한 정적 로그인 키에 기초하는 WiFi 보안은, 주로 연결의 무단 액세스를 방지하는 데 사용되지만, 그러나 스니핑(sniffing) 또는 해킹으로부터 데이터를 무한정으로 보호하는 것으로는 의도되지 않는다.
유선 분배 유닛(27)은 광섬유, 동축 케이블, 또는 이더넷(30A)에 의해 노트북(35), 데스크탑(36), 전화(37), 텔레비전(39)에, 또는 비틀린 구리 와이어쌍(30B) 전화선에 의해 호텔, 공장, 사무소, 서비스 센터, 은행, 및 가정을 포함하는 부동의 또는 고정된 유선을 작용하는 판매 터미널(38)의 지점에 연결될 수 있다. 유선 연결은 고속 데이터(high-speed data)(HSD) 연결을 WiFi, 이더넷, 또는 비틀린구리 와이어쌍으로 변환하기 위해 모뎀을 통해 로컬로 연결된 가정, 사무소, 공장, 또는 비즈니스에 광섬유 또는 동축 케이블을 분배를 포함할 수 있다. 광섬유 또는 케이블이 사용될 수 없는 원격 지역에 있어서, 디지털 가입자 라인(digital subscriber line)(DSL) 연결이 여전히 사용되지만, 그러나 데이터 전송률과 연결 안정성이 크게 양보된다. 무선, WiFi, 및 유선 연결을 통한 액세스를 계산하면, 인터넷에 연결된 개체의 수는 2020년까지 전 세계적으로 200억에 도달할 것으로 예상된다.
디바이스 간 직접 연결을 설정하고 유지하는 상기 회선 교환형 네트워크와는 달리, 패킷 교환형 통신은 패킷을 인터넷을 통해 그 목적지에 "라우팅"하기 위해 어드레스를 사용한다. 따라서 상기 패킷 교환형 통신 네트워크에서, 통신 디바이스 사이의 연결을 유지하는 단일의 전용 회선이 없으며, 인터넷을 통해 이동하는 데이터는 단일 일관된 경로로 이동하지도 않는다. 각각의 패킷은 그 목표 목적지에 도달하기 위해 상호 연결된 컴퓨터의 미로(maze)를 통해 그 길을 찾아야만 한다.
도 3은 패킷 교환형 네트워크 통신을 사용하여 노트북(60)으로부터 데스크탑(1)으로 IP 패킷을 라우팅하는 가상의 예를 도시하고 있다. 동작 시, 노트북(60)으로부터 무선 연결부(63A)를 통해 WiFi 라우터(62A)에 전송된 제1 데이터 패킷은 DNS 서버(70)의 어레이를 향하여 지향되며, DNS는 도메인 네임 서버의 약자이다. DNS 서버(70)의 어레이의 목적은 목적지 디바이스[이 경우에는 데스크탑(61)]의 문자 이름 또는 전화번호를, IP 어드레스로 변환하는 것이다. 패킷을 라우팅하기 전에, DNS 루트 서버(72)는 DNS 2차 서버(71)에 큰 어드레스 표를 다운로드했다. 노트북(60)으로부터의 질의(query)가 도달하였을 때, DNS 2차 서버(71)는 목적지, 즉 데스크탑(61)의 IP 어드레스에 응답한다. DNS 2차 서버(71)가 목적지 디바이스의 어드레스를 알 수 없는 경우, 이는 DNS 루트 서버(72)로부터 누락된 정보를 요청할 수 있다. 궁극적으로, IP 어드레스는 DNS 서버(70)의 어레이로부터 소스 어드레스로, 즉 노트북(60)으로 다시 통과된다.
그 후, 노트북(60)은 그 IP 데이터 패킷을 조립하고, 이들을 그 목적지로 연속해서 처음에 WiFi 라디오(63A)를 통해 WiFi 라우터(62A)로 송신하기 시작하며, 그 후 연속해서 중간 라우터로서 작용하는 라우터 및 서버의 네트워크를 통해 그 목적지로 송신한다. 예를 들어, 도시된 바와 같은 일련의 전용 라우터는 65A, 65B, 및 65C를 포함하며, 라우터로서 동작하는 컴퓨터 서버는 66A 내지 66E를 포함하고, 인터넷의 노드로서 또는 연결 포인트, 또는 POP, 즉 인터넷에 액세스할 수 있는 제한된 연결성의 게이트웨이로서 동작하는 라우터 네트워크를 함께 형성한다. POP로서 동작하는 일부 라우터 또는 서버는 소수의 인접한 디바이스를 통해 인터넷에 연결되지만, 도시된 바와 같이, 서버(66A)는 다수의 디바이스에 상호 연결되며, 또한 때로는 "슈퍼 POP"으로서 지칭된다. 명확함을 위해, 네트워크 토착어에서 POP 라는 용어는 애플리케이션 이름 POP, 또는 이메일 애플리케이션에 사용되는 보통의 오래된 우체국과 혼동해서는 안 되는 것을 인식해야 한다.
각각의 라우터 또는 라우터로서 동작하는 서버는 그 메모리 파일에, 어드레스 할 수 있는 IP 어드레스 및 가능하기로는, 그 위의 라우터가 어드레스할 수 있는 어드레스를 식별하는 라우팅 표를 포함한다. 이들 라우팅 표는 인터넷에 처음 연결될 때 모든 라우터에 자동으로 다운로드되어 설치되며, 또한 일반적으로 네트워크를 통해 패킷을 라우팅하는 부분으로서 로딩되지 않는다. IP 패킷이 라우터, POP 또는 슈퍼 POP 에 들어왔을 때, 그 목적지로의 여정 상에서 패킷을 어디로 지향시킬지를 알기 위해, 라우터는 일반적으로 어드레스의 최상위 자릿수인 충분한 IP 어드레스를 읽는다. 예를 들어, 뉴욕으로부터 도쿄로 향하는 패킷은 먼저 시카고로 라우팅되며, 그 후 도쿄로 연결되기 전에 샌프란시스코, 로스앤젤레스, 또는 시애틀의 서버를 통한다.
도 3의 예에 있어서, 노트북(60)으로부터 WiFi 라우터(62A)로의 패킷은 루트(64A)를 통해 라우터(65A)로 포워딩되고, 이는 수많은 선택을 갖더라도 루트(67A)를 통해 슈퍼 POP(66A)로 패킷을 포워딩하기로 결정한다. 슈퍼 POP(66A)가 많은 선택을 갖더라도, 이는 그 지정 순간에 최상의 경로를 서버-라우터(66D)에 대한 루트(68)로 결정하여, 이를 루트(67B)를 통해 로컬 라우터(65C)로 송신하며, 이는 다시 루트(67B)를 통해 WiFi 라디오(63B)에 의해 데스크탑(61)에 통신하는 액세스 포인트(65B)와 WiFi 라우터에 연결된다. 따라서 횡단된 경로가 슈퍼 POP(66A)로부터 서버-라우터(66D)로 로컬 라우터(65C)로 이동될 동안, 이는 단지 슈퍼 POP(66A)로부터 라우터(65B)로 로컬 라우터(65C)로, 또는 슈퍼 POP(66A)으로부터 서버-라우터(66D)로, 서버-라우터(66E)로 로컬 라우터(65C)로 이동할 수 있다. 또한, 패킷이 횡단하는 라우터의 수, 및 라우터 간 연결 각각의 사용 가능한 데이터 전송률은 인프라에 의해 또한 네트워크 트래픽 및 로딩에 의해 변하기 때문에, 어떤 경로가 가장 빠른지 또는 가장 좋은지를 선험적으로 결정할 방법이 없다.
패킷 교환형 데이터로 클라이언트 사이에 직접 연결을 설정하고 유지하는 회선 교환형 전화 통신과는 달리, 어떤 경로가 최적인지, 적절한지, 또는 더 빠른 경로인지를 결정하여, 패킷을 라우팅하기 위해 인터넷을 감시하면서 패킷을 라우팅하는 데 가장 적합한 경로를 결정하는 범용 인텔리전스는 없고, 또한 2개의 연속한 패킷이 심지어 동일한 경로를 취할 것이라는 보장도 없다. 따라서 패킷은 패킷이 횡단하는 라우터 및 서버를 동작하는 회사의 우선순위에 기초하여 인터넷을 통해 그 길을 "발견"한다. 각각의 라우터는, 본질적으로, 네트워크 상태에 따라 그 바람직한 경로를 정의하는 어떤 라우팅 표 및 라우팅 알고리즘을 포함한다. 예를 들어, 라우터의 선호는 동일한 회사에 의해 소유된 다른 라우터로 패킷 전송하는 우선시할 수 있어, 인접 라우터와의 연결 사이에 트래픽을 평형시키고, 다음 라우터로의 가장 짧은 지연을 찾고, 최소화하거나 비즈니스를 전략적 비즈니스 파트너에게 지향시키거나, 가능한 한 중간 라우터를 스킵함으로써 VIP 클라이언트를 위한 고속 차선을 생성한다. 패킷이 라우터에 들어갈 때, 지정 POP 에 의해 이루어진 라우팅 선택이 발신자 또는 네트워크 서버 운영자에게 가장 관심 있게 이루어졌는지의 여부를 아는 방법은 없다.
따라서 어떤 의미에서, 패킷이 취하는 루트는 타이밍과 운의 문제이다. 이전의 New York to Tokyo 라우팅 예에 있어서, 라우팅 및 결과적인 QoS는 경로의 작은 혼란, 즉 비선형 방정식에서 소위 "나비 효과"에 기초하여 실질적으로 변할 수 있다. 뉴욕으로부터의 패킷이 시카고의 "라우터 A"를 통과하는 경우를 생각하면, 캘리포니아에 일시적으로 높은 트래픽이 많기 때문에, 이는 캘리포니아보다는 멕시코시티로 포워딩된다. 그 후, 멕시코시티 라우터는 다시 IP 패킷을 싱가포르로 포워딩하고, 그로부터 이는 마지막으로 도쿄로 송신된다. 송신된 바로 다음 패킷은 시카고 "라우터 B"를 통해 라우팅되고, 이는 그 시점에서 낮은 트래픽 때문에, 상기 패킷을 샌프란시스코로 보내고, 그 후 직접 도쿄로 2홉만으로 지향시킨다. 이런 경우에, 제2 패킷은 제1 패킷이 더 길고 에두르는 경로를 통해 라우팅되기 전에 도쿄에 도착할 수 있다. 이 예는 라이브 비디오 스트리밍이나 VoIP 와 같은 실시간 통신을 위해 인터넷을 사용하는 문제, 즉 전달 시간을 보장하거나 또는 전달 수행 시 네트워크 지연을 제어하도록 인터넷이 설계되지 않았음을 강조한다. 대기 시간은 패킷이 단지 2개의 서버를 통해 또는 15개를 통해서만 라우팅되는지의 여부에 따라 50 ms 내지 1초 이상까지 변할 수 있다.
인터넷의 라우팅 제어의 결여는 실시간 애플리케이션에 문제가 있으며, 또한 특히 OTT 통신업체-인터넷 인프라의 상부 상에 무임 승차를 포획함으로써 인터넷 기반 전화를 제공하려고 노력하는 통신업체에 대해 취약한 QoS의 문제가 된다. OTT 통신업체가 라우팅을 제어하지 않기 때문에, 그들은 지연 또는 네트워크 대기 시간을 제어할 수 없다. 패킷 교환형 통신의 다른 문제점은 검출되지 않고 데이터를 빼내기 쉽다는 점이다. 해적이 패킷을 가로채서 소스 또는 목적지 IP 어드레스를 식별한다면, 그들은 중재 라우터로부터의 데이터를 가로채고 자신의 해적 네트워크를 통해 트래픽을 스니핑하거나 재지향시켜, 대화를 염탐하거나 또한 심지어 암호화된 파일을 해독시키기 위해 다양한 방법을 사용수 있다.
패킷을 라우팅하는 데 사용되는 소스 및 목적지 IP 어드레스 및 다른 중요한 정보(및 패킷을 난도질하기 위해 해적에 의해 사용되기도 하는)는 도 4에 도시된 디지털 데이터의 스트링으로 지정된다. 상기 IP 패킷은 디바이스 사이의 물리적 연결을 정의하는 디지털 정보, 디바이스를 함께 링크하도록 데이터가 조직화되는 방법, 패킷의 네트워크 라우팅, 유용한 데이터(페이로드)가 정확하게 전달되었는지 그리고 어떤 종류의 데이터가 페이로드에 있는지, 그리고 그 후 페이로드 데이터 자체가 다양한 애플리케이션에 의해 사용되는지를 보장하기 위한 수단을 포함하고 있다.
IP 패킷은 좌측으로부터 우측으로 전진하는 시간(86)으로 도시된 일련의 디지털 비트의 스트링으로서 순차적으로 송신 및 수신되며, 또한 그 중에서도 인터넷 엔지니어링 태스크 포스(Internet Engineering Task Force)를 포함하는 다양한 표준 위원회에 의해 설정된 인터넷 프로토콜이라고 불리는 지정 방식으로 조직된다. 이 표준은 규정된 프로토콜을 따르는 임의의 IP 패킷이 동일한 IP 표준을 준수하는 임의의 연결된 디바이스에 의해 통신하고 이해될 수 있음을 보장한다. 인터넷에 연결된 디바이스 및 애플리케이션의 통신 및 상호 작용성을 보장하는 것은 인터넷의 특징이며, 또한 회사, 정부 또는 개인이 인터넷을 제어하거나 액세스 가능성을 또는 그 가능성을 제한하는 것을 방지하기 위해, 오픈 소스 이니셔티브(Open Source Initiative) 또는 OSI의 안내 원리를 나타낸다.
기능성의 7개 층을 포함하는 요약인 OSI 모델은 IP 패킷의 형식, 및 패킷의 각 세그먼트가 사용되는 것을 정확하게 규정한다. IP 패킷의 각 부분 또는 "세그먼트"는 도 4의 표(87)에 요약된 지정 OSI 계층의 기능에 적용하는 데이터에 대응한다. 7개의 OSI 계층의 역할은 다음과 같다 :
- 계층 1(물리 계층 또는 PHY 계층)은 통신의 물리적 특성을 전기, RF, 및 광 신호로 표현하는 하드웨어 지정 정보와, 이들 신호를 통신 시스템에서 사용하기 위해 비트로 변환될 수 있는 방법을 포함한다. WiFi 라디오, 이더넷, 직렬 포트, 광섬유, 3G 또는 4G 셀룰러 라디오, 비틀린 쌍의 구리선 상의 DSL, USB, 블루투스, 케이블 또는 위성 TV, 또는 오디오, 비디오, 또는 멀티미디어 콘텐트의 디지털 방송을 비트 스트림으로 변환하는 것은 PHY 계층의 동작이다. IP 패킷에서 프리앰블(80)은 계층 1 데이터를 나타내며, 그리고 전체 데이터 패킷 또는 "프레임"을 이를 송수신하는 하드웨어로 동기화하는 데 사용된다.
- 계층 2, 프레임으로서 배열된 비트를 포함하는 데이터 링크 계층인 계층 2는 PHY 계층 1로부터 전달된 비트 스트림이 해석 가능한 데이터로 변환되는 규칙 및 수단을 정의한다. 예를 들어, WiFi 라디오 기반 비트 스트림은 802.11a, b, g, n 및 ac를 포함하는 임의의 개수의 IEEE 정의 표준을 준수할 수 있으며; 3G 무선 통신은 고속 패킷 액세스 방법인 HSDPA 또는 HSUPA를 사용하여 변조될 수 있으며; 광섬유에서 변조된 광 또는 동축 케이블 상의 전기 신호는, DOCSIS 3 표준에 따라 데이터로 디코딩될 수 있다. IP 패킷에 있어서, 계층 2 데이터는 선두의 "데이터 링크 헤더"(81) 및 후행의 "데이터 링크 트레일러(85)"와 함께 패킷의 나머지 부분, 세그먼트(82, 83, 84)를 캡슐화하고, 캡슐화된 전송되는 페이로드가 전송 프로세스에서 손실된 것이 없음을 보장하는 것처럼 시작 및 중지한다. 계층 2 데이터의 하나의 핵심 요소는 지정 이더넷 어드레스, RF 링크, 또는 하드웨어 지정 송수신기 링크로 또는 이로부터 데이터 트래픽을 지향시키는 데 사용되는 MAC 또는 미디어 액세스 어드레스이다.
- 계층 3, 네트워크 또는 인터넷 계층은, 패킷이 패킷 내에 포함된 페이로드의 특성에 관한 정보뿐만 아니라 IPv4 또는 IPv6 데이터 및 대응하는 소스와 목적지 IP 어드레스를 포함하는지의 여부, 즉 사용된 전송 프로토콜의 타입이 전송 제어 프로토콜(Transmission Control Protocol)(TCP), 사용자 데이터그램 프로토콜(User Datagram Protocol)(UDP), 또는 다른 어떤 것을 포함하는지의 여부를 포함하는, IP 패킷을 라우팅하는 데 사용되는 인터넷 프로토콜(IP) 정보를 포함하는 "데이터그램"으로 불리는 패킷을 포함한다. 또한, 계층 3은 IP 패킷이 전달되지는 않지만 결코 죽지 않는 불사(immortal)를 방지하는 기능을 포함한다. 지정 타입의 계층 3 패킷인 ICMP는 잘 알려진 "핑(ping)"기능을 포함하여 네트워크의 상태를 진단하는 데 사용된다. IP 패킷에서, 상기 계층 3은 "IP 헤더"(82)를 포함하며, 또한 전송 및 상위 계층 세그먼트(83, 84)를 포함하는 자신의 페이로드를 캡슐화한다.
- 계층 4, 전송 계층은 통신 디바이스 사이의 연결 특성을 정의하는 데이터의 세그먼트를 포함하며, 여기서 UDP는 비 연결형 통신을 위한 페이로드의 최소 설명, 즉 페이로드가 얼마나 큰지, 손실된 임의의 있는지, 그리고 어떤 애플리케이션 서비스(포트)가 전달된 데이터를 사용하는지를 정의한다. 상기 UDP는 페이로드의 전달을 확인하지 않고, 애플리케이션 상에서 에러 또는 손실 데이터를 확인하는 것에 의존하기 때문에 비 연결성으로 간주된다. 상기 UDP는 전형적으로 패킷을 재전송하는 것이 선택사항이 아닌, 방송, 멀티캐스팅, 및 스트리밍과 같은 시간 민감형 통신에 사용된다. 이와는 달리, TCP는 패킷을 확인함으로써 가상 연결을 보장하며, 다음 패킷이 송신되기 전에 페이로드가 안정적으로 전달되며, 그리고 누락된 패킷을 재송신한다. 또한, TCP는 체크섬(checksum)을 사용하여 전달된 패킷의 데이터 무결성을 체크하며, 또한 그 본래 순서대로 순서가 잘못된 패킷을 재조립하는 기능을 포함한다. TCP 와 UDP 모두는 소스 및 목적지 포트, 상위 계층 서비스 또는 애플리케이션, 예를 들어 계층 4 페이로드 내에 포함된 정보와 관련된 웹 서버 또는 이메일 서버의 설명을 정의한다. IP 패킷에 있어서, 계층 4는 TCP/UDP 헤더(83)를 포함하며, 또한 상위 OSI 계층(5, 6, 7)에 의해 사용하기 위한 콘텐츠를 포함하는 데이터/페이로드(84)를 캡슐화한다.
- 계층 5, 6, 7, 상위 또는 애플리케이션 계층은 인터넷에 의해 전달된 콘텐트를 데이터/페이로드(84)로서 설명한다. 계층 7, "애플리케이션" 계층은 OSI 모델에서 가장 높은 레벨을 나타내며, 또한 오픈 소스 및 독점 애플리케이션 소프트웨어를 모두 지원하기 위해 6개의 하부 OSI 계층에 의존한다. 통상적으로 사용되는 레벨 7 애플리케이션은 SMTP, POP 또는 IMAP를 사용하는 이메일, HTTP(크롬, 사파리, 익스플로러, 파이어폭스)를 사용하는 웹 브라우징, FTP를 사용한 파일 전송, 및 텔넷을 사용하는 터미널 에뮬레이션을 포함한다. 독점적인 애플리케이션은 마이크로소프트 오피스 제품군(워드, 액셀, 파워포인트), 어도브 일러스트레이터, 및 포토샵, 오라클 및 SAP 데이터베이스 애플리케이션; 퀴켄(Quicken), 마이크로소프트 머니(Microsoft Money), 및 퀵북(QuickBooks) 금융 소프트웨어; 이에 더하여, 어도브 아크로뱃 리더(Adobe Acrobat Reader) 및 애플 프리뷰(Apple Preview)와 같은 문서 판독기뿐만 아니라, 오디오 및 비디오 플레이어[아이튠(iTunes), 퀵타임(QuickTime), 리얼 미디어 플레이어(Real Media P계층), 윈도우 미디어 플레이어(Window Media P계층), 플래시(Flash)와 같은]를 포함한다. 레벨 7 애플리케이션은, 암호화와 같은 보안 기능과 함께, 일반적으로 텍스트, 그래픽 및 그림, 사운드 및 비디오, XML 또는 PDF와 같은 문서 프리젠테이션을 포함하는 레벨 6, "프리젠테이션" 계층에 의해 구문적으로 정의된 매립형 개체를 이용한다. 레벨 5, "세션"계층은 하나의 개체를 다른 프로그램 파일로 가져 오는 것과 같은 애플리케이션 간 연결성을 설정하고, 또한 세션을 시작하고 종료하는 것을 제어한다.
기재된 바와 같이, OSI 7 계층 모델은 각각의 계층의 기능을 정의하고, 대응하는 IP 패킷은 서로에 대한 데이터를 캡슐화한다[바부시카(babushka) 또는 러시아 중첩 인형과 유사한 방식으로 하나가 다른 것의 내부에 있는, 하나의 인형 내에 다른 인형이 있는, 그리고 이것이 계속되는 나무 인형]. 외부 패킷 또는 계층 1 PHY는 모든 상위 레벨과 관련된 정보를 포함하는 전체 IP 프레임을 정의한다. 이 PHY 데이터 내에서, 상기 계층 2 데이터 프레임은 데이터 링크 계층을 설명하며, 계층 3 네트워크 데이터그램을 포함한다. 이 데이터그램은 다시 인터넷 계층을, 전송 계층을 설명하는 계층 4 세그먼트 데이터를 구비한 그 페이로드로서 설명한다. 전송 계층은 상위 계층 데이터를, 계층(5, 6, 7) 콘텐트를 포함하는 페이로드로서 전달한다. 7 계층 캡슐화는 때로는 애플리케이션, 프리젠테이션, 세션, 전송, 네트워크, 데이터 링크, 및 물리 계층으로서 위에서부터 아래로 7개의 OSI 계층을 연속적으로 나열하는 "모든 사람들이 데이터 처리를 필요로 하는 것처럼 보인다(all people seem to need data processing)"라는 연상기호에 의한 것으로 지칭된다.
낮은 물리 계층과 링크 계층이 하드웨어에 지정한 반면에, 네트워크 및 전송 정보를 설명하는 IP 패킷 내에 캡슐화된 중간 OSI 계층은, 통상적으로 IP 패킷을 통신하고 전달하고 전달하는 데 사용되는 하드웨어에 완전히 불가지론적이다. 더욱이, 전송 계층의 페이로드로서 캡슐화된 상위 계층은, 패킷이 인터넷을 통해 어떻게 라우팅되거나 전달된 바와는 완전히 독립적으로 적용되고 동작되는 애플리케이션에만 지정한다. 이 구획화는 각각의 계층이 본질적으로 독립적으로 감시될 수 있게 하여, 패킷 포맷팅의 관리 승인이나 패킷 페이로드의 유효성 검사에 대한 필요성 없이, 수많은 기술 및 사용자 조합을 지원할 수 있다. 불완전하거나 부적절한 IP 패킷은 단순히 폐기된다. 이러한 방식으로, 상기 패킷 교환형 네트워크는 임의의 인터넷 연결된 디바이스 또는 개체 사이에서 일관된 형태로 이질적인 통신 매체에 대해 다양한 애플리케이션 관련 정보를 라우팅, 전송, 및 전달할 수 있다.
결론적으로, 교환형 회선 네트워크는, 패킷 교환형 네트워크 통신이 문서, 사운드, 비디오, 및 텍스트를 여러 개의 패킷으로 분할하고, 복수의 네트워크 경로(정확한 시간 내에 전달을 제공하기 위한 최선의 노력을 사용하여 우체국과 유사한)를 통해 이들 패킷을 전달하고, 그 후 본래의 콘텐트를 재조립하고, 그 과정에서 손실된 것이 없음을 확인할 동안, 2개 또는 그 이상의 당사자 사이에서 단일의 직접 연결을 요구한다. 회선 교환형 PSTN 과 패킷 교환형 VoIP 사이의 비교가 이하의 표에 요약되어 있다.
네트워크 PSTN 인터넷
기술 회선 교환형 패킷 교환형
연결 전용 전기 연결 각 패킷이 인터넷을 통해 라우팅 됨
데이터 전달 실시간(회선) 최선 전송(패킷)
신호 아날로그 또는 디지털 디지탈, IP, VoIP
콘텐트 음성 음성, 텍스트, 데이터, 비디오
데이터 전송률 낮음 높음
에러 체킹 없음, 또는 최소한 광범위
끊긴 라인의 영향 끊긴 또는 짧은 호출 호출 재라우팅
정전의 영향 네트워크이 전력을 전달 배터리 백업 필요
PSTN이 실시간 전기 회선 연결을 사용하여 동작할 동안, 패킷 교환형 네트워크는 그 도착이 늦었더라도 궁극적으로 메일을 전달하기 위해 상이한 트럭 및 문자 집배원을 사용하는 우체국과는 달리, 패킷 및 페이로드를 전달하는 방법을 찾기 위해 "최상의 노력" 방법을 사용하여 콘텐츠를 전달한다는 점을 인식해야 한다. 패킷 교환형 네트워크에 의해 이 목적이 달성된다는 방법을 더 잘 이해하기 위해, 네트워크를 위한 7 계층 OSI 모델에서 각각의 계층의 기능 및 역할을 보다 더 깊이 살펴야 한다.
OSI 계층 1 - 물리(PHY) 계층
OSI 계층 1 에 의해 설명된 물리 계층은 통신을 촉진시키기 위해 사용되는 하드웨어의 동작을 어드레스한다. 이것은 전기, 라디오, 및 광 전송만을 설명하는 가장 기본적인 계층이지만, 하드웨어의 특별한 부분에 대해 각각 상세한 설명이 있어서 가장 다양하다. 넓게 보았을 때, 통신 하드웨어는 인터넷의 백본을 형성하는 서버(예를 들어, "클라우드")에 연결하는 높은 트래픽 용량을 위해 사용되는 고 대역폭 통신, 및 디바이스 사이의 로컬 통신을 완성하는 또는 클라우드로부터 소비자, 기업 및 기계에 이르기까지 "라스트 마일" 링크를 연결하는 저 대역폭 연결의 2가지 타입으로 분류된다.
도 5a는, 예를 들어 마이크로파 타워(98), 광섬유(91)를 통해 연결된 POP 서버(21A 및 21B)와 마이크로파 위성(93) 사이의 고 대역폭 통신을 도시하고 있다. 마이크로파 통신은 마이크로파 타워(96A, 96B) 사이의 직접적인 가시선(line-of-sight) 링크를 요구한다. 상기 타워들은 도시된 바와 같이 유선 연결부(97A, 97B)에 의해 POP 서버(21A, 21B)에 연결된다. 마찬가지로, 위성 통신은 위성(93)과 상기 POP 서버(21A, 21B)에 연결된 위성 접시(92A, 92B) 사이에 마이크로파 업 링크 및 다운 링크(95A, 95B)를 요구한다. 이전 예에서처럼, 유선 연결부(94A, 94B)는 서버(21A, 21B)를 위성 접시(92A, 92B)에 연결한다. 또한, 상기 서버(21A, 21B)는 광섬유(91) 상에 운반된 고 대역폭 광학 연결부(90)를 사용하여 직접 연결될 수 있다. 지상 및 해저 케이블이 구리 와이어의 대형 다중-컨덕터 도관을 이미 포함하고 있지만, 제한된 대역폭 및 구리의 높은 비용은 광섬유로의 글로벌 이전이 가속된다.
도 5b는 서버(21B, 21C) 및 고 대역폭 연결부(23)를 포함하는 클라우드(22)로부터의 "라스트 마일" 링크의 다양한 예 및 다양한 컴퓨터, 전화, 라디오 및 연결된 "물건"을 도시하고 있다. 도시된 바와 같이, 유선 연결부는 광섬유(91) 및 동축 케이블(105), 및 감소 정도의 비틀린 구리 와이어쌍을 포함할 수 있다. 무선 연결은 셀룰러 라디오 타워(18), 양방향 라디오 타워(15), WiFi 액세스 포인트(26) 및 위성(93)을 포함하는 많은 수단에 의해 전송될 수 있다.
일부 예로서, 클라우드 게이트웨이로서 동작하는 서버(21C)는 휴대폰(32), 태블릿(33), 또는 노트북(35)에 연결하는 셀룰러 통신을 위해, 광섬유 연결부(24)에 의해 무선 타워(18)를 구동하는 LTE 기지국(17)에 연결된다. 또한, 서버(21C)는 WiFi(29)를 휴대폰(32), 태블릿(33), 또는 노트북(35)에 전송하는 공공 WiFi 라우터(32)에 연결된다.
서버(21C)는 HDMI(107) 및 케이블 모뎀(103)을 사용하여 동축 케이블(105)에 의해 TV(39)를 구동하는 셋톱박스(TV STB)(102)에 다시 연결되는 케이블 모뎀 전송 시스템(cable modem transmission system)(CMTS)(101)에 연결된다. 상기 케이블 모뎀(103)은 2가지 상이한 타입의 출력-음성 및 고속 디지털(HSD)을 발생시킨다. 상기 음성 출력은 무선 전화(5)에 사용될 수 있는 반면에, HSD는 홈 WiFi 액세스 포인트(26)에 의해 발생된 WiFi 신호(29)를 통해 태블릿(33), 가전기기(34), 및 휴대폰(도시되지 않음)뿐만 아니라 데스크탑(36)을 구동한다. 상기 케이블 모뎀(103)은 일부 경우에서는 데스크탑(36)에 유선 연결된 이더넷(104)으로서 HSD를 생산할 수 있다. 대안적으로, TV STB(102)는 위성 접시(92A, 92B)를 포함하는 위성 링크(95)를 통해 위성(93)에 의해 그 신호를 수신할 수 있다. 종합적으로, TV STB(102) 및 케이블 모뎀(103)의 다양한 출력은 홈 통신 네트워크(100)를 생성한다.
서버(21C)는 TETRA 또는 EDACS 기지국(14) 및 라디오 타워(15)로부터 또는 데스크탑 폰(9)을 구동하는 협력하는 PBX(8)를 통해, 라디오(16A, 16B)를 구동하는 양방향 라디오(20) 신호를 거쳐 전문적인 통신 디바이스에 연결될 수도 있다. 대부분의 양방향 라디오 및 개인 브랜치 교환 시스템이 패킷 교환형 기술에 기초하지 않고 또한 호출 라우팅을 위해 공공 전화번호를 사용하지 않기 때문에, 데이터가 서버(21C)와 PBX(8) 또는 라디오 기지국(14) 사이에 데이터가 송신될 때마다 정보가 손실된다. POTS 6에 연결된 PSTN-브릿지도 진실한데, 그 이유는 POTS 가 음성과 데이터의 혼합을 취급하도록 설계되지 않았기 때문이다.
물리 계층 또는 PHY 계층의 역할은 시스템에서 통신이 일 대 일, 일 대 다, 또는 다 대 다인지에 따라 변한다. 도 6a에서 개념적으로 도시된 일 대 일 통신에 있어서, 2개의 단지 2개의 전자 디바이스(140A, 140B)는 점 대 점 연결을 실현하기 위해, 전용 전기, 광학 또는 RF 연결을 사용하여 서로 직접 통신한다. 인터페이스(143A, 143B)에 설치된 규정되고 그리고 미리 정의된 통신 프로토콜을 사용함으로써, 통신을 수행하기 위해 하드웨어 전용 인터페이스가 디바이스 사이에 설정될 수 있다. 보다 구체적으로, 전자 회로(141A)로부터 생성된 데이터는 전기, RF, 또는 광 신호(144)를 통해 동일하게 구성된 물리적 통신 인터페이스(143B)에 연결된 물리 계층 통신 인터페이스(143A)로 전달된다. 수신된 데이터는 전자 회로(141B)에 의해 처리되고, 일부 경우에는 응답이 디바이스(140A)의 인터페이스(143A)로 반송된다.
일 대 일 통신에는 단지 2개의 디바이스만 있기 때문에, 트래픽을 지향시키거나 디바이스를 식별하거나, 또는 어떤 디바이스가 명령에 응답하는지를 결정하기 위해, 소프트웨어를 포함할 필요가 없다. 이러한 전용의 점 대 점 통신의 예는 본래 프린터를 데스크탑 컴퓨터에 연결하는 데 사용되는 RS232 와 같은 직렬 통신 버스, 및 휴대폰 디스플레이의 LED 백라이트 밝기를 제어하는 데 사용되는 간단한 직렬 제어 또는 S2C 버스(미국 특허 제7,921,320호)를 포함한다.
전용의 점 대 점 통신은 몇 개의 이점을 제공한다. 첫째, 실행이 용이하며, 그리고 필요하다면, 단일의 집적 회로 내라도 하드웨어로 전적으로 수행될 수 있으며, 중앙처리장치(CPU) 코어가 필요없다. 대안적으로, 인터페이스는 데이터 교환을 관리하기 위해 제한된 명령 세트를 실행하기 위해, 단지 최소한의 CPU 처리 전력만을 요구하는 펌웨어, 즉 하드웨어 지정 소프트웨어로 실행될 수 있다. 둘째, 트래픽 관리에 대한 필요성 없이, 이러한 인터페이스는 매우 높은 데이터 전송률로 동작할 수 있다. 마지막으로, 다른 디바이스가 라인을 공유하거나 통신을 "청취"할 수 없기 때문에, 다양한 이점을 제공한다. 이 경우, 인터페이스는 디바이스가 그 포트에 연결될 때, 임의의 디바이스의 ID를 "확인" 또는 "인증"하고, 순간적으로 연결이 차단되었다면 포트를 비활성화하도록 실행될 수 있다. 인증되지 않은 디바이스는 무시되며, 유효한 디바이스가 문제가 되는 디바이스를 대체할 때까지 포트는 종료된 상태로 존재한다.
일 대 일 통신에서 두 디바이스 사이의 관계는 2개의 근본적으로 다른 방식으로 관리될 수 있다. "피어 투 피어(peer-to-peer)" 통신에 있어서, 각각의 디바이스는 동일한 의사 결정 권한을 가지며, 통신 교환의 제어는 일반적으로 선착순으로 우선순위가 정해진다. 대안적으로, "마스터-슬레이브(master-slave)" 구성에 있어서, 마스터 디바이스는 의사 결정 프로세스를 제어하고, 또한 슬레이브는 임의의 동작을 시작하기 위해 상기 마스터 디바이스에 요청하고 그리고 승인을 받아야만 한다.
일 대 다수의 PHY-전용 인터페이스가 도 6b에 도시되어 있으며, 여기서 3개 또는 그 이상의 디바이스(140A, 140B, 140C)는 데이터 "버스"(144)로 도시된 공통 통신 라인에 의해 함께 연결된다. 각각의 디바이스는 대응하는 데이터 라인(142A, 142B, 142C)에 의해 물리적 인터페이스(143A, 143B, 143C)에 연결되는 전자 회로(141A, 141B, 또는 141C)를 포함한다. 이런 구성에 있어서, 임의의 하나의 디바이스로부터 통신된 데이터는, 버스 또는 통신 매체에 연결된 다른 모든 디바이스로 전달된다. 예를 들어, 디바이스(140C)가 버스(144) 상으로 데이터를 송신하면, 두 디바이스(140A, 140B)는 통신을 수신할 것이고, 디바이스(140B)가 버스(144) 상으로 데이터를 전송하면, 디바이스(140A, 140C)는 통신을 수신할 것이다. 모든 사람이 청취하는 통신은 콘텐트를 많은 TV 수신기에 전송하는 방송 TV 방송국과 유사한 의미인, "방송"으로서 알려져 있다.
현대 언어에서는 일 대 다 방송이 멀티캐스팅으로서 알려져 있다. 계층 1 PHY 전용 일 대 다 방송은 본질적으로 안전한 형태의 통신이 아닌데, 그 이유는 방송사는 누가 청취하는지 모르기 때문이다. 제2차 세계 대전에서 방송은 정보를 스크램블하기 위해 비밀 알고리즘을 사용함으로써 메시지를 해석하는 청취자의 능력을 방해하도록 설계된 "암호화"를 사용하여 안전하지 않은 채널에 대해 군대, 함대, 및 잠수함에 정보를 전송하는 데 사용되었다. 허가받지 않은 청취자가 "코드를 파괴할 수" 있다면, 침입자가 기밀 통지를 가로챌 수 있을 뿐만 아니라 방송사가 그들이 할 수 있다는 것을 알지 못하기 때문에, 보안이 심각하게 손상된다. 따라서 계층 1 PHY 전용 실행에 있어서, 일 대 다 통신은 다음과 같은 몇 가지 주요 단점으로 고통을 겪는다.
- 통신 버스 또는 매체에 연결할 수 있는 임의의 디바이스는, 이들이 의도하지 않은 수신자 또는 보안 위협을 나타내더라도, 통신의 콘텐트를 수신하거나 또는 모니터링할 수 있다.
- 정보를 송신하는 디바이스, 즉 "전송 디바이스"는 다른 디바이스가 청취하고 있다는 것을 전혀 모른다.
- 전송 디바이스는 송신된 데이터가 정확하고 그리고 정밀하게 수신되었는지를 확인할 수 없다.
- 의도하지 않거나 이해관계가 없는 수신자에게 통신 트래픽을 전송하면, 그들이 원하지 않거나, 필요치 않거나, 신경 쓰지 않는 메시지를 수신하도록 수신자를 강제함으로써, 가치 있는 통신 채널 대역폭을 낭비한다.
PHY 전용 실행을 사용하는 멀티 디바이스의 연결성의 문제는, 어떤 디바이스가 전송하도록 인증되었는지의 우선순위 결정 시, 채널 대역폭에 대한 경쟁 때문에 일 대 다, 특히 다 대 일 디바이스에서 더욱 악화된다. 데이터 충돌을 방지하기 위해, 복수의 디바이스가 동시에 방송하려는 경우에, PHY 전용 통신은 통신 채널 또는 매체를 공유하는 각 디바이스에 대해 미리 결정된 우선순위 권한의 계층을 채택해야만 한다. 중앙처리장치 또는 CPU 설계에 있어서, CPU 내 및 CPU 와 메모리 사이의 통신을 관리하기 위해, 여러 가지 방법이 조합된다. 이들 개념은 CPU 가 어드레스로부터 데이터를 별도로 전송하는 데 사용된 "데이터 버스", 및 일부 동작이 수행되어야만 할 때를 식별하는 데 사용된 하나 또는 그 이상의 "차단" 라인과 통신하려고 시도하는 어떤 디바이스 또는 메모리 위치를 식별하는 데 사용되는 "어드레스 버스"의 원리를 포함한다.
이런 방식으로, CPU는 요구된 동작에 동적으로 반응할 수 있어서, CPU 가 필요에 따라 여러 주변 디바이스와 통신하고 지원하는 것을 허용하고, 그 연결된 주변 디바이스로부터 상태 정보를 지속적으로 폴링하거나 요청할 CPU의 책임이 없다. 동작 시, 주변 구성요소가 주의를 필요로 할 때마다, 이는 "차단"신호, 즉 공유된 연결, 차단 라인을 접지에 전기적으로 단락시킴으로써 서비스에 대한 요청을 발생시킨다. 차단을 발생시킨 후, 주변 디바이스는 CPU 가 비행기의 "승무원 호출" 표시등과 유사한 방식으로 이것이 필요로 하는 것을 디바이스에 요청할 때까지 기다린다. 차단 서비스 루틴이 일반적으로 차단 디바이스를 서비스하기 전에 CPU가 이것이 하고 있는 동작을 완료할 수 있기 때문에, 이러한 방법은 즉각적인 주의를 요구하는 실시간 이벤트의 우선순위 처리를 취급하기에는 좋지 않다.
실시간 애플리케이션을 위한 차단-기반 통신의 능력을 증강시키기 위해, CPU 아키텍처는 CPU가 수행중인 동작을 중단하고 그리고 즉시 높은 우선순위 또는 실시간 이벤트, 예를 들어 라우터 내로 오는 메시지 또는 휴대폰 내로 오는 호출을 누락할 것을 강제하도록, "마스크할 수 없는 중단"으로 불리는 우선순위 라인의 개념을 도입하였다. 1 등석 객실의 소수 승객을 위한 VIP 처리처럼, 중앙 통신 또는 마스터 디바이스에 연결된 제한된 수의 디바이스에 대해서는 이러한 방법이 동작하지만, 상기 접근법은 많은 사용자를 취급하기 위해 확장할 수 없고, 중앙 집중식 제어가 없는 피어-분배식(peer-distributed) 시스템을 지원하지 않는다.
CPU의 디바이스 어드레스의 원칙을 확장하면, OSI 계층 2, 3, 4는 모두 마찬가지로 디바이스 사이의 통신 트래픽을 지향시키는 핵심 구성요소로서 디바이스 "ID"를 이용한다. 예를 들어, 데이터 링크 계층인 계층 2는 미디어 액세스 또는 MAC 어드레스를 사용하는 입력 및 출력 연결부를 식별하고, 네트워크 계층인 계층 3은 IP 어드레스를 사용하는 네트워크를 통해 패킷을 라우팅하며, 전송 계층인 계층 4는 어떤 종류의 데이터가 전송되고 있는지, 예를 들어 이메일, 웹 페이지, 파일, 등을 식별하기 위해 포트 어드레스를 사용한다. CPU에 있어서, 어드레스 버스, 데이터 버스, 및 차단 라인은 "병렬" 포트 연결로도 알려진 별도의 라인을 포함한다. 병렬 포트는 단일 칩 내에서의 상호 연결 또는 컴퓨터 마더보드 상에서의 근거리 고속 연결을 위해 데이터 전송률을 최대화하는 데 효과적인 반면에, 많은 수의 라인은 값비싸며 또한 장거리 통신에는 비실용적이다.
대신에, 시간이 지남에 따라 전송된 패킷에서 정보를 전달하는 직렬 통신은 오늘날 전자 통신을 위한 성행하는 방법을 형성한다. 도 4에 이미 도시된 IP 패킷은, 로컬로 또는 글로벌로, 통신 네트워크를 통해 송신자와 수신자 사이에 콘텐트, 페이로드(84)를 전달하는 데 필요한 모든 라우팅 및 통신 데이터를 포함하고 있다. 각각의 IP 패킷은, 동시에 병렬로 송신되는 대신에 시간(86)이 지남에 따라 순서대로 배치되고 수신된다는 점을 제외하고는, 데이터 링크 헤더(81)에서의 데이터 링크 계층 정보, IP 헤더(82)에서의 IP 어드레스 정보, 및 TCP/UDP 헤더(83)에서의 포트 어드레스 정보를 포함하는 필수적인 어드레스를 포함한다.
OSI 계층 2 - 데이터 링크 계층
PHY 전용 다중 디바이스 통신에서 정보 흐름을 제어 시 전술한 문제를 극복하기 위해, 7 계층 OSI 모델은 계층 2 또는 "데이터 링크" 계층의 추상화를 포함한다. 본질적으로, 데이터 링크 계층은 교통경찰의 의무를 수행하고, 데이터의 흐름을 지시하며, 공유된 데이터 버스 또는 공유 매체 상의 어떤 데이터가 지정 디바이스를 위한 것인지를 결정한다. 계층 2 데이터 링크 계층의 역할이 도 7a에 예시되어 있으며, 거기에서 디바이스(145A, 145B, 145C)는 공통 연결 또는 "버스"(144)를 공유하지만, 각각은 한 번에 오직 하나의 데이터 링크 통신(147)만을 지원하는 그 자신의 데이터 링크 계층 통신 인터페이스(146A, 146B, 146C)를 갖는다. 따라서 비록 많은 디바이스가 물리 계층에서 함께 연결되더라도, 즉 공통의 하드웨어 버스를 공유하더라도, 데이터 링크 계층 상에서는 그들 중 단지 2개만 한 번에 서로 연결된다. 구체적으로, 디바이스(C)가 다른 2개의 물리적 레벨에 연결되어 있음에도 불구하고, 디바이스(145A)가 디바이스(145B)와 독점적으로 통신하기를 원한다면, 즉 데이터 링크(147)는 디바이스(A)와 디바이스(B) 사이에서만 발생한다.
모두 3개의 디바이스, 즉 데이터 링크 인터페이스(146A, 146B, 146C)에서 데이터 링크 계층 인터페이스로서 계층 2 관련 하드웨어 또는 소프트웨어를 도입함으로써, 데이터 버스(144)를 통해 송신된 데이터는 송신자와 의도된 수신자 디바이스 사이의 통신을 제한하도록 검사되고 필터링될 수 있다. 디바이스에 연결된 다른 버스는 이들이 여전히 동일한 데이터를 수신하지만, 이를 무시하고 들어오는 메시지를 수신한 결과 아무런 조치를 취하지 않는다. 이러한 프로토콜은 직렬 주변 디바이스 인터페이스 또는 SPI 버스에 의해 사용되며, 복수의 디바이스가 공통 "데이터 버스"에 연결되며, 상기 버스는 데이터를 전달하지만, 그러나 그 지정 어드레스가 어드레스 라인에 나타나는 경우에만 응답한다. 이러한 방식으로, SPI 버스는 LCD TV 백라이트 시스템에서 LED를 제어하는 데 사용되어, 고휘도 HD 및 UHD 비디오 콘텐츠를 위한 밝기 제어 및 "로컬 디밍(local dimming)"을 촉진시키도록 TV 디스플레이에서 LED의 각각의 스트링의 독립적인 제어를 허용한다. 컴퓨터의 PCI Express 확장 슬롯에서, 자동차에서 사용되는 CAN 버스에서, 어떤 메모리 뱅크가 판독되고 기입될지를 선택하기 위해, 동일한 개념이 컴퓨터 메모리 버스 아키텍처에 사용될 수도 있다.
마찬가지로, 데이터 링크 계층의 개념은 무선 헤드폰, 스피커, 비디오 카메라 등의 블루투스 무선 통신에 사용되며, 오직 페어링된 디바이스, 이전에 인증되었거나 "결합된" 디바이스만 서로 통신할 수 있다. 블루투스 프로토콜에 있어서, 데이터 뱅크를 설정하는 결합 프로세스는 임의의 실제 데이터 통신 이전에 이로부터 독립적으로 발생한다. 일단 결합이 완료되면, 2개의 결합된 디바이스는 적어도 이론적으로 다른 당사자 사이에서 동시에 발생하는 다른 블루투스 대화에 의해 방해받지 않고 통신할 수 있다. 실제로, 블루투스 통신 버스(144)는 제한된 대역폭 및 데이터 용량의 공유된 라디오 주파수 채널을 나타낸다. 블루투스 표준 위원회에서 정의하고 FCC와 그 해당 외국 기관의 동의 하에 할당된 바와 같이, 모든 블루투스 호환 디바이스는 동일한 공유 라디오 주파수 대역 또는 "채널" 상에서 방송한다. 각각의 동시적인 방송은 채널의 사용 가능한 대역폭 및 데이터 전송률의 일부를 소비한다. 중첩된 전송에도 불구하고, 데이터는 채널이 과도하게 채워지지 않는 한 너무 오래 충돌하지 않는다. 데이터 충돌의 위험을 최소화하고 또한 채널 과밀 및 가용성이라는 도전을 피하기 위해, 블루투스 통신은 의도적으로 매우 짧은 거리 및 매우 낮은 데이터 전송률로 제한된다.
이전에 기재된 버스 아키텍처에 있어서, 물리적 연결은 공통 라인, 전기 연결, 또는 복수의 디바이스에 직접 연결되거나 여러 디바이스 사이에 공유되는 매체이다. 상기 버스 아키텍처에 있어서, 버스에 연결된 임의의 디바이스는 통신을 감소시키기 위해 적은 양이기는 하지만, 버스로부터 약간의 에너지를 소비하며, 또한 버스 성능을 악화시킨다. 각각의 추가적인 디바이스 연결에 의한 버스 성능을 점진적으로 악화시키는 이 현상을 "로딩(loading)"이라고 한다. 상기 로딩이 너무 큰 경우, 버스는 더 이상 그 지정 성능 한계 내에서 동작할 수 없으며, 또한 통신은 너무 느림에 의해 또는 높은 에러율을 나타냄으로써 실패한다. 그 지정 성능 등급에 부합하는 것을 실패하기 전에, 라인 또는 버스에 연결될 수 있는 디바이스의 최대 개수는 버스 또는 연결의 "팬 아웃(fan out)"으로 지칭된다. 로딩의 위험을 완화시키기 위해, 버스는 다수의 세그먼트로 파괴되며, 각각의 세그먼트는 점 대 점 방식으로 동작하며, 신호 무결성은 다른 디바이스로 송신하기 전에 향상되거나 또는 버퍼링된다. 연결의 관점에서, 통신되는 데이터 또는 신호, 데이터 링크는 버스 아키텍처와 동일하지만, 그러나 전기적, 광학적 또는 무선 신호 강도, PHY 데이터는 연결된 디바이스의 개수와는 독립적으로 일정한 레벨로 지속적으로 유지된다.
부스팅된 신호와의 점 대 점 연결을 포함하는 하나의 그러한 연결된 네트워크는 도 7b에 도시된 허브 아키텍처이며, 여기서 통신 스택(146A, 146B, 146C)에 의해 간략화된 형태로 각각 도시된 디바이스(A, B, C)는 단일 부스팅(boosting) 버스 또는 "허브(hub)"(148)를 통해 서로 연결하는 데 사용된다. 상기 허브는 데이터 스트림을 수정, 필터링 또는 해석하지 않고, 그 들어오는 신호 내용을 충실하게 재생하며, 그 후 다른 디바이스에 연결된 라인을 통해 동일한 신호의 부스팅된 버전을 출력한다.
각각의 디바이스는 허브 통신 스택(150A)에 주변 디바이스 통신 스택(146A)을 연결하는, 허브 통신 스택(150B)에 디바이스 통신 스택(146B)을 연결하는, 및 허브 통신 스택(15C)에 디바이스 통신 스택(146C)을 각각 연결하는 자신의 전용 통신 라인, 특히 151A, 151B, 151C를 통해 허브에 연결된다. 차례로, 허브(148) 내의 통신 스택은 허브-연결된 디바이스를 상호 연결하기 위해 고속 내부 버스(149)에 연결된다. PHY 계층 데이터가 모두 허브(148) 및 내부 데이터 버스(149)를 통해 이동하더라도, 계층 2 데이터 링크 계층 통신(147)은 디바이스(A) 내의 통신 스택(146A)만이 디바이스(B)의 통신 스택(146B)과 독점적으로 말하고 디바이스(C)와는 그렇지 않은 것처럼 동작한다. 그러나 PHY 계층 데이터는 허브에 연결된 모든 디바이스에 그리고 동일한 전파 지연으로 전달된다. 또한 어떤 디바이스가 방송되고 있고 또한 어떤 디바이스가 청취 중에 있는지를 아는 방법이 없기 때문에, 허브 디바이스는 다방향 통신을 지원해야만 한다. 이더넷 및 선더볼트(Thunderbolt)를 위한 허브는 이러한 방식으로 동작한다. 다른 허브에 있어서, 예를 들어 "범용 직렬 버스" 또는 USB 에 대해, 허브는 데이터 흐름의 데이터 흐름의 2개의 타입과 디폴트 방향을 구분하기 위해, 상이한 형상의 USB 커넥터를 사용하여, 하나의 입력과 여러 개의 출력(일반적으로 2개 내지 6개)을 갖고 있다.
신호 부스팅을 제공하기 위해 디바이스를 상호 연결시키는 다른 방법은 도 7c에 도시된 "데이지 체인(daisy chain)" 아키텍처이며, 여기서 디바이스(A, B, C)는 물리적 버스 연결(151A)을 통해 디바이스(B) 통신 스택(152B)에 연결된 디바이스 A 통신 스택(152A)과, 물리적 버스 연결(151B)을 통해 디바이스 C 통신 스택(152C)에 연결된 디바이스(B) 통신 스택(152B)과, 물리적 버스 연결(152C)을 통해 데이지 체인에(있을 경우) 연결된 디바이스 C 통신 스택(152C)에 연속적인 형태로 연결된다. 유선 시스템에서 물리적 연결 및 문자 그대로 기계적 커넥터 자체가 구별된다는 사실을 명확히 하기 위해, 통신 스택(152A, 152B, 152C)은 2개의 계층 1 물리적 인터페이스를 각각 포함하지만, 그러나 오직 하나의 계층 2 데이터 링크 계층을 포함한다.
데이지 체인 동작에 있어서, PHY 데이터는 통신 스택(152A)의 데이터 링크 계층으로부터 그 PHY 인터페이스 내로, 그 후 물리적 버스 연결(151A)을 구성하는 케이블을 통해 통신 스택(152B)의 PHY 인터페이스 내로, 그 데이터 링크 계층으로, 디바이스(B)의 제2 PHY 인터페이스의 내로, 물리적 버스 연결(151B)을 구성하는 케이블을 통해 통신 스택(152C)의 PHY 인터페이스 내로, 그리고 그 데이터 링크 계층까지 흐른다. 따라서 물리적 신호가 도시된 모두 3개의 디바이스를 통해 그 길을 흐를 동안, 상기 데이터 링크 계층은 오직 디바이스 A의 통신 스택(152A)을 디바이스(C)의 통신 스택(152C)에 연결하고, 여기서 디바이스(B)는 이것이 운반하는 데이터를 무시한다. 데이지 체인 아키텍처에 기반한 네트워크 통신의 예로는 파이어 와이어(Firewire), 즉 IEEE1394, 음악 디지털 인터페이스 또는 MIDI(musical digital interface), 및 초기 윈도우-기반 퍼스널 컴퓨터에서 사용된 이제는 구식이 된 토큰 링을 포함한다. 데이지-체이닝(daisy-chaining) 디바이스의 긍정적인 특징은 여분의 디바이스, 즉 허브 또는 이에 연결되는 모든 네트워크 배선이 필요 없다는 점이다. 데이지 체인 아키텍처의 하나의 부정적인 특징은 데이터가 통과하는 각 디바이스에 따라 디바이스 사이의 전파 지연이 증가하고, 특히 고속 실시간 애플리케이션에서 일관성 없는 성능을 유발시킨다는 점이다.
모두 3가지 예, 즉 버스 아키텍처, 허브 아키텍처, 및 데이지 체인 아키텍처에 있어서, PHY 계층 데이터는 의도된 수신자가 아니더라도 모든 네트워크-연결된 디바이스로 전송된다. 디바이스 자체는 패킷 식별 및 필터링을 수행하여, 수신 한 데이터의 어드레스와 디바이스에서 또는 그 IC 중 하나에서 비휘발성 메모리, 마이크로 기계식 스위치 또는 와이어 점퍼를 사용하여 고정형 영구 어드레스로서 전형적으로 미리 프로그램된, 수신된 데이터의 어드레스를 비교한다. 지정 디바이스가 그 어드레스와 일치하는 목적지를 포함하는 데이터 패킷을 인식하였을 때는 응답하고, 그렇지 않으면 패킷을 모두 무시한다. 패킷에서의 디바이스 어드레스는 MIDI, USB, IEEE1394, Thunderbolt, 등 사용 중인 통신 프로토콜에 부합해야만 한다. 패킷이 데이터 링크 계층으로서 인터넷 프로토콜을 사용하는 경우, 상기 어드레스는 본 발명에서 이하에 기재될 "미디어 액세스" 또는 MAC 어드레스로 불리는 지정 이름이 주어진다.
도시된 버스, 허브, 및 데이지 체인 아키텍처의 핵심 속성 중 하나는 PHY 계층에서 방송되는 데이터, 즉 전기, RF 또는 광 신호가 모든 연결된 디바이스로 송신된다는 점이다. 이 방법은 이들을 필요로 하지 않고 또한 의도하지 않은 디바이스에 불필요하게 패킷을 송신함으로써 귀중한 네트워크 대역폭을 소모한다. 로컬 영역 네트워크 또는 LAN 연결에 대한 일반적인 표준으로 이더넷이 등장함에 따라, 이러한 낭비되는 네트워크 대역폭이 식별되었으며, 궁극적으로는 네트워크 "스위치"의 도입에 의해 제거되었다.
도 8a의 3개의 디바이스 예에 도시된 바와 유사한 LAN 실행에 있어서, LAN 스위치(159)는 디바이스(145A, 145B, 145C) 내에 포함된 통신 인터페이스(146A, 146B, 146C)의 통신 PHY 계층 사이에 삽입된다. 이미 7a에 도시된 버스 연결과는 대조적으로, 디바이스를 상호 연결하는 단일의 공유 데이터 버스(144)를 갖는 경우, LAN 스위치(159)의 추가는 버스를 3개의 분리된 점 대 점 연결, 즉 디바이스(145A)와 스위치(159) 사이의 PHY 연결(148A), 디바이스(145B)와 스위치(159) 사이의 PHY 연결(148B), 디바이스(145C)와 스위치(159) 사이의 PHY 연결(148C) 등을 포함한다. 도시된 바와 같이, 각각의 물리적 연결은 단지 2개의 디바이스 사이에서 점 대 점 방식으로 발생하며, 중간 디바이스는 그 인접한 연결된 디바이스를 따라 직렬 데이터 스트림을 통과시키는 데 책임이 있다.
상기 원리는 임의의 수의 디바이스로 확장될 수 있으며, LAN 스위치(159)의 동작은 단방향 또는 양방향 및 반이중 또는 전이중일 수 있다. 동작 시, 네트워크 연결된 디바이스(145A, 145B)의 통신 인터페이스(146A, 146B) 사이에 배타적으로 데이터 링크(147)를 설정하기 위해, 상기 LAN 스위치(159)는 오직 2개의 통신 디바이스(145A, 145B) 사이에만 물리 계층 연결을 설정한다. 따라서 PHY 계층 연결은 2개의 통신 디바이스, 즉 디바이스(145A)와 디바이스(145B) 사이에서만 배타적으로 설정되지만, 그러나 다른 네트워크 연결된 디바이스, 예를 들어 디바이스(145C)에는 연결이 없다. 상기 LAN 스위치(159)를 사용하는 하나의 이점은, 디바이스(145C)가 네트워크에서 발생하는 다른 통신의 채터(chatter)를 들어서 괴롭힘을 받지 않으며, 또한 그 통신 인터페이스(146C)는 호출될 때까지 무료로 유지된다는 점이다.
LAN 스위치(159)를 사용하는 것의 두 번째 이점은 LAN 스위치(159) 내로 들어오는 신호는 인접한 네트워크 연결된 디바이스로 전송되기 전에 부스팅되므로 더 많은 디바이스를 LAN 스위치로의 연결에 의한 로딩, 신호 저하, 또는 속도의 영향이 없다는 점이다. 따라서 LAN 스위치(159) 외부의 팬은 본질적으로 제한되지 않으며, LAN 스위치의 연결 수에 의해서만 결정된다.
라인(160A 내지 160F)을 포함하는, LAN 스위치(159)의 개략적인 표현이 도 8b에 도시되어 있다. 2개의 라인의 모든 조합의 교차점에는 양방향 스위치 및 증폭기를 나타내는 LAN 교차점(161)이 있다. 예를 들어, 교차점(AB)은 B 라인(160B)을 A 라인(160A)에 상호 연결하고, 교차점(BE)은 B 라인(160B)을 E 라인(160E)에 상호 연결하며, 교차점(CE)은 C 라인(160C)을 E 라인(160E)에 상호 연결한다. 정상적인 통신에 있어서, 상호 연결 쌍을 생성하기 위해서, 각각의 라인은 하나의 기껏해야 다른 하나의 라인에만 연결된다. 일단 디바이스가 위치되면, 계층 2 MAC 어드레스(표시되지 않음)의 라우팅 표가 LAN 스위치에 유지되어, 어떤 디바이스가 연결되었는지 그리고 어떤 커넥터인지의 트랙을 유지한다. 상기 표는 본질적으로 MAC 어드레스를 LAN 스위치로의 물리적 연결에 맵핑하여, 계층 2, 데이터 링크 계층, 및 계층 1, PHY 계층 사이의 정확한 관계를 설정한다. 상기 표는 동적이므로, 하나의 디바이스가 분리되어 있고 그리고 다른 디바이스가 연결되었다면, MAC 어드레스 라우팅 표는 LAN 스위치(159)에서 자동으로 업데이트된다.
네트워크에서 데이터 방송이 모든 디바이스에 송신되는 특수한 경우에 있어서, 예를 들어 하나의 디바이스가 다른 디바이스를 찾지만 그러나 LAN 스위치 상에서 그 위치를 식별하지 않은 경우, 모든 디바이스는 동시에 상호 연결되고, 오직 하나의 소스만 데이터를 방송하고 나머지는 이를 수신한다. 내장형 증폭기 때문에, 방송 모드에서도 모든 신호가 버퍼링되며 속도 나 신호 무결성 저하가 나타나지 않는다.
LAN 스위치(159)를 사용하는 세 번째 및 가장 중요한 이점은, 전체 네트워크의 대역폭을 극적으로 증가시킴으로써, 도 8c에 도시된 바와 같이 디바이스의 쌍 사이에서 동시에 그리고 독립적으로 다중 대화가 발생하는 것을 허용한다는 점이다. 이 예에 있어서, 디바이스(145A, 145B, 145C, 145F)는 물리적 라인(160A, 160B, 160C, 160F)으로 LAN 스위치(159)에 각각 연결된다. 데이터 링크 계층 2를 통해, 디바이스(160A, 160B)는 페어링(164)을 통해 전용 통신 채널(AB)을 설정하며, 동시에 디바이스(160C, 160F)는 페어링(165)을 통해 전용 통신 채널(CF)을 설정한다. 디바이스(145A 내지 145B)의 통신에 있어서, 데이터는 라인(160A)을 따라 "온" LAN 교차점(162)을 통해 그리고 라인(160B)을 통해 디바이스(145B)에 송신된다. 동시에, 디바이스(145C)와 디바이스(145F)의 통신에 있어서, 데이터는 라인(160C)을 따라 LAN 교차점(163)을 통해 그리고 라인(160F)을 통해 디바이스(145F)로 송신된다. 다른 모든 LAN 교차점 연결은 디바이스가 다른 라인에 연결되더라도 오프(off)로 존재한다.
이러한 방식으로, 2개의 독립적인 통신 채널 또는 "대화"는 공통 데이터 버스를 공유하기를 기다리지 않고, AB 페어링(164) 및 CF 페어링(165)에서 전체 데이터 전송률로 발생할 수 있다. 따라서 도시된 예에 있어서, 4개의 디바이스를 연결하는 네트워크의 대역폭은 상기 LAN 스위치(159) 및 LAN 아키텍처를 사용함으로써, 버스, 허브 또는 데이지 체인 네트워크 아키텍처를 사용하는 것에 비해 2배가 된다. "n" 라인 및 연결부와의 LAN 스위치에 있어서, 최대 동시 대화 수는 한 번에 하나의 대화만 지원할 수 있는 직렬 연결을 사용하는 대체 네트워크에 비해 "n/2"이다.
2개의 디바이스, 예를 들어 AB 페어링(164)에서 디바이스(145A, 145B)가 연결되었을 때, 하나의 디바이스만 한 번에 "대화"할 수 있고 다른 디바이스는 청취할 수 있기 때문에, 단일 라인을 사용하는 통신은 반이중임을 인식해야 한다. 전이중 통신이 요구된다면, LAN 스위치(159)에서의 라인 및 교차점 연결 수는 2배가 되어야만 하며, 디바이스(145A)는 145B의 입력에 연결되는 그 출력을 가지며, 디바이스(145B)는 145A의 입력에 연결되는 그 출력을 갖는다. 따라서 디바이스(A)에서 디바이스(B)로의 전이중 대화는 2개의 페어링, 즉 디바이스(A)가 디바이스(B)로 데이터를 송신하는 AB 페어링, 및 디바이스(B)가 디바이스(A)로 데이터를 송신하는 BA 페어링을 동시에 포함하며, 그 각각은 상이한 라인 및 고유의 교차점 연결을 통한다.
도 8c의 도면이 라인(160A 내지 160F)이 전기 커넥터의 와이어 및 플러그를 나타내는 것을 암시할 수 있지만, 상기 라인이 무선 또는 광학 통신을 나타내더라도 동등하게 유효하다. 무선 통신에 있어서 각각의 라인은 예를 들어 하나의 라인의 데이터를 운반하는 데 사용되는 고유한 주파수 대역 또는 "서브 채널(subchannel)"을 나타낼 수 있으며, 20개의 무선 주파수, 대역, 또는 서브 채널은 최대 10개의 상이한 대화를 동시에 그리고 독립적으로 수행하는 데 사용될 수 있다. 광 통신에 있어서, 각각의 라인은 상이한 파장의 광 또는 고유한 변조 방식을 나타낼 수 있다. 무선 또는 광학 인터페이스는 통신 디바이스 내에서 전자기 통신을 전기 신호로 다시 변환한다. 따라서 이런 방식으로, 모든 네트워크 구성 통신 매체의 대역폭을 향상시키기 위해, LAN 스위치가 사용될 수 있다.
패킷 교환형 네트워크에서 트래픽을 지향시키고 데이터를 전송하기 위해 수많은 프로토콜과 표준이 출현했지만, 더 많은 설명을 요구하는 몇 가지 광범위한 표준이 등장했다. 기존의 노후된 표준으로부터 광범위하게 채택되거나 발전되었으며, 이들 통신 프로토콜 및 그 관련 하드웨어가 이하에 논의된다.
- 전기 기반 통신 네트워크를 위한 이더넷(IEEE802.3)
- 근거리 무선 통신 네트워크를 위한 WiFi(802.11)
- 장거리 무선 통신 네트워크를 위한 4G/LTE
- 케이블 및 광섬유 기반 통신 네트워크를 위한 DOCSIS3
이더넷(IEEE802.3) - 현대의 네트워킹에서 전기 연결이 LAN을 형성하도록 사용될 때, 대부분의 독점 네트워크는 이더넷으로 알려진 세계적으로 인정된 표준 IEEE802.3으로대체되었다. 이더넷 사양은 전기 연결, 전압, 데이터 전송률, 통신 속도, 및 심지어 물리적 플러그 및 소켓까지 정의할 뿐만 아니라, 데이터 링크 계층 2 에서 사용되는 데이터 패킷을 규정하고 있다. 따라서 상기 이더넷은, 표준으로서, 데이터 링크 계층 2 및 PHY 계층 1 사양이다. 계층 1 이더넷 패킷(188) 또는 계층 2 이더넷 패킷(189)으로서 이더넷 데이터 패킷의 콘텐트의 사양은, 좌측으로부터 우측으로 표현된 도 9에 직렬 데이터로서 그래픽으로 도시되어 있다. 관련된 표(190)는 이더넷 패킷에서 각각의 블록 또는 서브패킷의 기능을 기재하고 있다.
도시된 바와 같은 계층 2 이더넷 패킷(189)은, 이더넷 패킷에 의해 운반되는 실제 데이터를 나타내는, 목적지 MAC 어드레스(182), 소스 MAC 어드레스(183), 선택적인 가상 LAN 블록(184), 이더타입(Ethertype) 블록(185), 프레임 체크(186) 및, 페이로드(187)를 포함하고 있다. 속도 사양을 보장하기 위해, 이더넷 사양에 따라 계층 2 이더넷 패킷의 크기는 42B로부터 1500B로 페이로드를 운반하기 위해, 64B로부터 1,518B 범위일 수 있다. 선택적 VLAN 블록(184)이 패킷에 포함되는 경우, 상기 패킷 길이는 1,522B의 최대 계층 2 이더넷 길이를 갖는 4B 만큼 증가한다.
계층 1 이더넷 패킷(188)은 계층 2 이더넷 패킷(189)의 전체를 동기화를 위한 SFD(181)를 포함하는 헤더 및 데이터 프레임 헤더로서의 프리앰블(180)과 결합한다. 계층 1 이더넷 패킷(188)의 최대 길이는 72B의 최소 크기로부터 VLAN 옵션 없이 1,526B 까지의 최대 길이, 또는 VLAN 블록(184)이 포함된 1,530B의 범위에 속하는, 계층 2 이더넷 패킷(189)보다 8B 더 길다.
동작에 있어서, 층 1 데이터 프레임 헤더 서브필드로서 프리앰블(180)의 목적은, 디바이스가 데이터를 전송하려고 시도하고 있음을 초기에 식별할 때 하드웨어를 돕는 것이다. 시작 프레임 헤더 SFD 181, 다른 계층 1 아티팩트(artifact)는 들어오는 패킷 데이터를 타이밍 클록에 동기화하여 데이터를 안정적으로 읽을 수 있게 하는 데 사용된다. 계층 1 이더넷 패킷(188)의 이들 2개의 블록이 수신된 후, 계층 2 이더넷 패킷(189)은 데이터가 어느 LAN 연결된 가는 곳과 어디에서 오는지를 설명하는 목적지 MAC 어드레스(182) 및 소스 MAC 어드레스(183)로 시작한다. LAN 스위치는 지능형이며, 또한 이들 어드레스에 따라 데이터를 라우팅할 수 있다. VLAN 블록(184)은 선택적이며, 만일 존재한다면, IEEE 사양 802.1Q 에 따라 이들을 서브 네트워크 또는 가상 로컬 영역 네트워크로 패킷을 분할함으로써 패킷의 필터링을 촉진시킨다. Ethertype 185는 포맷에 따라 데이터의 타입 또는 그 길이로서 데이터의 포맷을 지정한다. Ethertype 185 및 VLAN 184는 선택적 VLAN 184 데이터가 삽입되었는지 또는 삽입되지 않았는지의 여부에 대한 혼동을 방지하는 포맷을 따른다.
이 모든 헤더 데이터가 수신된 후, 페이로드(187)는 이더넷 패킷에 의해 전달되는 실제 데이터를 포함하고 있다. 이 데이터는 인터넷 프로토콜에 부합할 수 있으며 OSI 모델에 기재된 바와 같이 계층 3 내지 계층 7 콘텐트를 캡슐화하는 데이터를 포함할 수 있다. 대안적으로, 맞춤 설계된 시스템에 있어서, 페이로드(187)는 지정 하드웨어 또는 제조업자에 대해 독점적인 프로토콜을 포함할 수 있다. 필요한 모든 데이터가 이더넷 표준에서 허용되는 1,500B의 최대 패킷 크기로 송신될 수 없다면, 상기 페이로드는 단편으로 파괴되거나, 또는 대안적인 프로토콜을 사용하여, 예를 들어 표준 이더넷 패킷의 6배인 최대 9,000B 까지 운반할 수 있는 점보 프레임을 사용하여 송신될 수 있다. 프레임 체크(186)는 계층 2 이더넷 패킷(189)을 위해, 그러나 프리앰블(180) 또는 SFD(181)를 위한 계층 1 데이터는 해당되지 않는, 간단한 에러 체킹-관련 정보를 운반한다. 프레임 체크(186)는 계층 2 이더넷 패킷(189)의 열(raw) 데이터에서의 의도하지 않은 변경을 검출할 수 있는 32-비트(32b) 사이클 잉여 체크 알고리즘을 이용한다.
이더넷을 위한 물리적 표준은 오늘날 가장 일반적인 전기 및 광섬유 모두를 포함한다. 데이터 전송률은 시간이 지남에 따라 "기가비트 이더넷(Gigabit Ethernet)"으로 지칭되는, 10 Mbps 내지 100 Mbps로, 최근에는 1 Gbps 내지 100 Gbps 까지 발전했다. 이더넷 케이블은 쉽게 인식할 수 있는 RJ-45 커넥터를 사용하여, LAN 스위치와 서버, 데스크탑, 노트북, 셋톱박스, 및 모뎀과 같은 디바이스 사이의 연결을 보호한다. 일부 경우에 있어서, "PoE(power over Ethernet)" 또는 POE로 알려진 디바이스에 전력을 공급하기 위해, 이더넷이 사용될 수 있다.
WiFi(802.11) - 많은 경우에 있어서, 이더넷은 근거리 무선 링크를 사용하여 모바일 디바이스와의 무선 네트워크 연결을 설정하는 데 사용된다. 시간이 지남에 따라 독점적인 무선 링크는 상업적으로 WiFi 라고 부르는 IEEE802.11 표준에 의해 정의된 표준화된 근거리 통신 프로토콜로 대체되었다. 종종 라우터와 스위치 기능을 라디오 수신기 및 송신기에 병합하면, 이제 WiFi 라우터는 가정, 사무실, 비즈니스, 카페, 및 공공장소에서 보편화된다.
도 10에 도시된 무선 링크는 2개의 상호 연결된 네트워크", 즉 이더넷 MAC 액세스"(200A)를 포함하는 것과, 무선 링크, 즉 "무선 액세스 포인트"(200B)를 포함하는 다른 하나의 조합을 도시하고 있다. 인터페이스 회로 및 관련 펌웨어 블록(202)은 이더넷 프로토콜과 라디오 프로토콜, 즉 WiFi 사이의 계층 2 데이터 링크(205A, 205B)를 촉진시킬 뿐만 아니라, 전기 네트워크와 무선 네트워크 사이에 계층 1 PHY 인터페이스, 즉 물리적 브릿지(204A, 204B)를 제공한다. 동작 시, 이더넷(201)으로부터 오는 데이터는 통신 스택(203A)에 들어가고, 물리적 신호는 연결(205A)을 통과한 계층 1 PHY 연결(204A) 및 계층 2 데이터 링크 정보를 통해 인터페이스(202)에 연결된다.
처리 후, 데이터는 인터페이스(202)로부터 무선 액세스 포인트(200B)의 통신 스택(203B) 내를 통과하고, 물리적 신호는 연결(205B)을 통과한 계층 1 PHY 연결(204B) 및 계층 2 데이터 링크 정보를 통해 연결된다. 이 정보는 연결부(204) 상에서 라디오 송수신기를 통과하여, 라디오(206A 내지 206N)를 통해 "n"개의 무선 채널 중 임의의 하나 상에서 라디오 안테나(20) 상의 출력으로서 방송된다. 라디오 신호를 수신할 때, 데이터 경로는 동일하지만, 전술한 기재와는 반대 방향이다.
또한, 인터페이스(202)는 LAN 스위치로서 동작하여, 상이한 라디오 채널 상에서 상이한 이더넷 연결 디바이스와 동시에 통신할 수 있으며, 이 경우 2개 이상의 이더넷 케이블(201)이 무선 링크 디바이스에 플러그된다. 대안적으로, 다중 라디오 회화는, 다른 수신자로의 패킷의 라우팅을 관리하기 위해, 계층 3 및 계층 4를 사용하여 단일의 이더넷 연결에 대해 상류 디바이스로 송신될 수 있다.
근거리 라디오 통신을 위한 하나의 표준화된 디바이스 및 프로토콜은, IEEE802.11 사양에 따라 동작하는 무선 로컬 영역 네트워크 또는 WLAN 디바이스이다. 상업적으로 WiFi로 알려진 이러한 디바이스는 무선 인터넷 액세스를 위해 및 무선 분배 시스템 또는 WDS를 위해, 즉 유선 연결이 설치가 불편하거나, 어렵거나, 비용이 많이 드는 유선 연결을 대체하기 위해 사용되는 라디오 연결에 사용된다. 마스터 IEEE802.11 사양과는 별도로, 802.11a, 802.11n, 802.11ac 등과 같은 서브버전은 반송파 주파수, 채널, 변조 방식, 데이터 전송률, 및 RF 통신 범위를 지정하는 데 사용된다. 이 애플리케이션 당시 IEEE 에 의해 승인된 802.11 표준의 서브버전에 대한 요약이 아래의 표에 나열되어 있다.
802.11 버전 출시일 반송파
주파수
(GHz)
채널 BW (MHz) 최대 데이터
전송률(Mbps)
최대 #
MIMO
변조 실내 범위
(m)
실외 범위 (m)
a
1999.09 5 20
6 내지 54
없음
OFDM
35 120
3.7 - 5,000
b 1999.09 2.4 22 1 내지 11 없음 DSSS 35 5,000
g 2003.06 2.4 20 6 내지 54 없음 OFDM
DSSS
38 140
n
2009.10
2.4 또는
5
20 7.2 내지 72.2 5 OFDM 70 250
40 15 내지 150

ac


2013.12


5

20 7.2 내지 96.3
8


OFDM


35


-

40 15 내지 200
80 32.5 내지 433.3
160 65 내지 866.7

ad

2012.12

60

2,160

6,912

없음
OFDM
단일반송파 또는
저전력


-


-
도시된 바와 같이, WiFi는 주로 2.4 GHz 및 5 Ghz 에서 동작하며, 3.7 Ghz는 장거리 WDS 라우팅을 위해 설계되었으며, 따라서 미국에서만 채택되었다. 60 GHz 반송파는 새롭게 채택되어, DOCSIS 3을 사용하는 기가비트 이더넷 및 광섬유/케이블과 같은 다른 고 비트 전송률 네트워크로의 연결과 일치하는 기가비트 데이터 전송률을 위해 설계되었다. 카페 및 공공장소에서 일상적인 다중 사용자의 병렬 동작을 지원하기 위해, 802.11n 및 802.11g는 병렬 5 채널 및 8 채널 다중-입력 다중-출력 또는 MIMO 연결성을 제공한다. 높은 대역폭을 달성하기 위해, WiFi는 밀접하게 이격된 다중 직교 서브-반송파 채널 상에서 디지털 데이터를 인코딩하는 방법으로서 OFDM 또는 직교 주파수-분할 다중화를 사용한다.
동작 시, OFDM은 하나의 신호를 부반송파로 분리하여, 하나의 극도로 빠른 신호를 다수의 느린 신호로 분할한다. 이 문맥에서의 직교성(orthogonality)은 인접한 부반송파 채널이 중첩되지 않음을 의미하여, 어느 채널 데이터가 의도되는지에 대한 혼란을 피한다. 그 후, 많은 부반송파는 수신기에서 수집되고 그리고 재조합되어 하나의 고속 전송을 재구성한다. 부반송파 채널의 데이터 전송률이 단일의 고속 채널보다 낮기 때문에, 왜곡 및 간섭에 대한 신호 민감성이 감소되어, 이 방법을 시끄러운 주변 환경이나 장거리에서도 신뢰할 수 있는 RF 통신에 적합하게 한다. 특별한 3.7 GHz 대역을 제외하고, WiFi는 더 높은 방속 전력으로 실내 70m 와 실외 250m 로 제한된다. 상기 와이파이는 셀룰러 핸드오프 능력이 없으므로, 장거리 모바일 통신에서의 사용이 문제가 되며 아래에 기재되는 LTE 기술로 격하된다.
OFDM 변조를 사용하는 WiFi 에 있어서, 전송된 데이터는 "기로"로 구성되며, 데이터의 타입은 많은 디지털 상태를 더 작은 기호의 수로 자연스럽게 압축하는 것을 나타낸다. 그 후, 심볼은 낮은 "심볼율(symbol rate)"로 전송되어, 반송파 전송 문제와 관련된 데이터 손실로부터 면책(immunity)을 제공한다. 이런 접근법은 낮은 에러율, 개선된 QoS, 및 신호 강도 변동, RF 고 스팅, 및 주위 노이즈 또는 EMI 에 대해 감소된 민감성을 구비한 더 높은 비트 전송률을 보장한다. 심볼은 각 지정 심볼에 상관되는 주파수, 톤, 또는 각각의 지정 심볼과 상관된 지정 펄스 패턴과 같은 임의의 변조일 수 있으며, 고정된 주기의 심볼의 시컨스(sequence)는 심볼 레이트(symbol rate)보다 더 높은 비트 전송률에서 데이터 스트림으로 변환될 수 있다. 이 방법은 플래그가 설정된 주기로, 예를 들어 1초로, 16개의 고정된 위치 중 하나로 이동될 수 있는 세마포어(semaphore) 플래그와 유사하다. "보드(baud)" 레이트로도 알려진 상기 심볼 레이트 심볼 레이트는, 초당 하나의 심볼 또는 하나의 보드이며, 하나의 보드라는 용어는 "초당 전송 매체에 대해 이루어진 고유의 심볼 변경의 수"로서 정의된다. 플래그가 16개의 상이한 값을 가질 수 있으므로, 2진 형태로, 24 = 16 상태이기 때문에, 8개의 상태는 4 비트와 등가이다. 그 후, 초당 1 또는 1 보드의 심볼 레이트는 상기 심볼 레이트보다 4배 높은 4 비트의 데이터 비트 전송률과 같다. 마찬가지로, 심볼을 나타내기 위해 16개의 상이한 톤을 사용하여, 초당 10M 심볼의 심볼 레이트로 40 Mbps의 디지털 데이터 비트 전송률로 나타날 수 있다.
그러나 사용되는 심볼의 수는 비트 전송률뿐만 아니라 에러율 및 통신 QoS 에도 영향을 끼친다. 예를 들어, 너무 많은 심볼이 사용되면, 라디오의 디지털 신호 프로세서 또는 DSP 가 노이즈 환경에서 심볼을 정확하게 식별하는 것이 어려울 수 있으며, 데이터 에러율이 상승하여, 패킷의 동적 CRC 체크를 유지하도록 데이터의 재전송을 요구한다. 주어진 심볼 레이트에서 더 적은 수의 심볼을 사용하면 서로를 쉽게 식별할 수 있지만, 그러나 다시 디지털 비트 전송률 및 통신 대역폭을 낮춘다. 비유하자면, 상기 세마포어 플래그가 16개 대신에 4개의 위치 중 하나로 이동될 수만 있다면, 폭우 속에서 보는 것이 더욱 쉬워, 통신 에러의 확률, 즉 이를 잘못 읽을 가능성이 상당히 감소된다. 그러나 4개의 플래그 위치 중 하나만 사용하면, 보드율은 여전히 초당 1 심볼이지만, 비트 데이터 전송률은 22 = 4 이기 때문에 2 bps로 떨어진다. 따라서 비트 데이터 전송률과 비트 에러율 사이에 본질적인 거래가 있어서, WiFi는 심볼 레이트를 동적으로 조정함으로써 변조된다. 이러한 거래는 LTE 라디오 통신에서 이루어진다.
802.11 버전 a, g, 및 n 에 있어서, 새로운 심볼은 매 4 마이크로초마다 또는 각각의 부반송파 채널에 대해 250,000 보드로 전송될 수 있다. WiFi는 64개의 부반송파 채널을 사용하므로, 이론적으로 최대 심볼 레이트는 전체 채널 용량에서 16M 보드이어야 한다. 그러나 채널 간 간섭에 대해 보호하기 위해, 실제로 64개의 부반송파 채널 중 48개만 사용할 수 있어서, 전체 채널 용량에서 심볼 레이트를 12M 보드로 감소시킨다. 현대 라디오 통신에 있어서, 심볼은 다중 레벨의 비트로 변환되며, 레벨은 아래의 표에 요약된 다양한 위상 변조 방식을 사용하여 RF 통신 조건에 따라 동적으로 변한다.
위상
변조
라디오 채널상태
심볼당
비트
부반송파 당심볼 레이트
다중-채널
최대 WiFi
심볼 레이트
WiFi 최대
비트 전송률
BPSK 노이즈 또는 장거리 1
250k baud

12M baud
12 Mbps
QPSK 좋음, 중간 범위 2 24 Mbps
16-QAM 매우 좋음, 단거리 4 48 Mbps
64-QAM 탁월함, 근접 6 72 Mbps
여기서, 심볼 레이트와 비트 전송률 사이의 관계는 아래의 방정식에 의해 정의된다.
(비트 전송률)/(심볼 레이트) = 심볼당 비트 수
여기서, 비트 데이터 전송률은 초당 비트 또는 bps로 측정되고, 심볼 레이트는 초당 심볼 또는 "보드"로 측정된다. 도시된 위상 변조 방식 중 "BPSK(Binary Phase Shift Keying)" 또는 BPSK는 장거리 및 노이즈 라디오 환경에서 가장 잘 동작하지만, 그러나 심볼당 1 비트의 순수 2진법을 사용하므로, 따라서 낮은 데이터 전송 속도로 제한된다. 좋은 무선 환경에서, 데이터 전송률은 심볼 레이트를 초과하며, 즉 심볼당 비트 수가 > 1 이며, 라디오의 비율 전송률은 라디오 상태, EMI의 부재, 송수신기 사이의 거리, 라디오의 방송 전력에 따라 BPSK 전송률의 2배 내지 6배로 증가될 수 있다. 예를 들어, 좋은 환경에서 또는 중거리 무선 링크에 대해, "직교 위상 이동 방식" 또는 QPSK 방법은 심볼당 2 비트를 구비한 BPSK의 데이터 전송률의 2배를 제공한다. 16-QAM으로지칭되는 단거리 동작으로 제한된 "16 레벨 직교 진폭 변조"는 WiFi 통신에서 48 Mbps를 제공하는 심볼 레이트의 4배로 비트 전송률을 높이도록 사용될 수 있다. 탁월한 무 노이즈 라디오 상태 하에서, 데이터 전송률은 64-QAM, 즉 64 레벨 직교 진폭 변조를 사용하여 심볼당 6 비트까지 증가시킬 수 있다. 통신에서의 위상 변조 방식은 당업자에게 잘 알려져 있으므로, 본 명세서에서는 더 기재되지 않을 것이다.
802.11b 및 802.11g의 경우에 있어서, 사용된 다른 변조 방식은 직접-시컨스 확산 스펙트럼(direct-sequence spread spectrum) 또는 DSSS 이며, 상기 "확산"이라는 용어는 DSSS 에서 그 반송파 신호가 라디오의 전체 대역폭, 즉 스펙트럼에 대해 발생한다는 사실을 지칭한다. DSSS 에 있어서, 변조 회로는 하나의 정보 비트보다 짧은 의사 코드 심볼의 연속적인 스트링을 이용하여, 전송 전에 사인파를 위상 이동하고 또한 의사 랜덤하게 위상 이동하여 수신기 신호로부터 동일한 노이즈를 추출한다. 필터링의 결과는 상호 관련없는 노이즈가 완전히 제거되고 또한 단위 아래의 신호 대 노이즈 비율이더라도 라디오 노이즈 및 EMI 가 있는 경우에도 통신이 신뢰성 있게 발생할 수 있다는 것이다. 확산 스펙트럼이 전체 라디오 대역을 사용하기 때문에, 이러한 방법은 OFDM 보다 더 이상 선호되지 않으며, 또한 최신 WiFi 실행에 사용되지 않는다.
라디오 대역 및 변조 방식에 대한 PHY 계층의 세부 사항을 규정하는 것 외에, 802.11 표준은 WiFi 라디오에 통신할 때 요구되는 직렬 데이터 패킷 포맷도 정의하고 있다. 이더넷 패킷에 비해, WiFi 패킷 헤더가 더 복잡한데, 그 이유는 부분적으로는 이것이 하나 또는 2개의 네트워크 어드레스뿐만 아니라 라디오 수신 및 송신 스테이션 어드레스를 지정해야만 하기 때문이다. WiFi 패킷의 데이터 구조는 증가하는 시간(86)의 방향으로 좌측으로부터 우측으로 표현된 직렬 데이터로서 그래픽으로 도시된 도 11에 도시되어 있다. 관련의 표(242)는 WiFi 패킷의 각각의 블록 또는 서브패킷의 기능을 기재하고 있다. 이더넷 패킷과 마찬가지로, 데이터 프레임은 계층 1 데이터 프레임에 계층 1 헤더로 캡슐화된 계층 2 데이터 링크 정보를 포함한다.
계층 1 헤더는 2B 긴 PLCP(232)뿐만 아니라 10B 긴 프리앰블(230) 및 2B 긴 SFD(231)를 포함한다. PLCP가 계층 1 및 계층 2 데이터 모두를 포함하는 것으로 간주되지만, 여기에서는 계층 1 데이터로서 간주될 것이다. 함께, 계층 1 헤더는 14B 길게 간주될 수 있으며, WiFi 패킷의 나머지는 빈 페이로드에 대해 34B의 길이로부터 최대 페이로드(241)에 대해 2,312B의 길이까지 변하는 계층 2 데이터를 구성한다. 2,312B 길이의 최대 페이로드 길이에서, WiFi 패킷은 이더넷 패킷보다 더 길며, 이는 표준 양식에서 1,500B 길이의 페이로드로 제한된다. 도시된 바와 같이 계층 2 WiFi 패킷의 구성요소는 프레임 제어(233), 주기(234), 블록(235, 236)으로서 각각 도시된 라디오 기지국 MAC 어드레스 1 및 2, 블록(237) 및 선택적 블록(239)으로서 각각 도시된 조건부 MAC 어드레스 3 및 4, 시컨스(238), 및 프레임 체크(240)를 포함한다.
동작 시, 계층 1 데이터 프레임 헤더 서브 필드로서의 프리앰블(230)의 목적은, 디바이스가 데이터를 송신하려고 시도하고 있음을 초기에 식별하는 하드웨어를 돕는 것이다. 시작 프레임 헤더 SFD(231), 다른 계층 1 아티팩트는 데이터를 신뢰성 있게 판독할 수 있게 하기 위해 들어오는 패킷 데이터를 타이밍 클록에 동기화하기 위해 사용된다. 이들 2개의 블록 후에, 물리 계층 수렴 절차(물리 계층 수렴 절차) 또는 PLCP(232)는 패킷의 길이, 데이터 전송률, 및 헤더의 에러 체킹에 관한 정보를 제공한다.
프레임 제어(233), 제1 순수 데이터 링크 계층 2 데이터는 WiFi 패킷의 버전 타입을 정의하며, 즉 이것이 관리 관련 정보를 포함한다면, "To DS/From DS"를 포함하여 제어 명령, 데이터, 또는 재동작된 특징은 라디오가 액세스 포인트 또는 무선 분배 시스템으로서 동작하는지의 여부를 결정하는 데 사용된 비트를 제어한다. "주기 및 ID"로도 알려진 주기(234)는 네트워크 할당 벡터 주기 또는 NAV 주기, 전력 절감 모드를 제외하고, 다른 스테이션이 매체를 다투기 전에 RF 매체가 얼마나 오래 바쁠지를 정의하며, 여기서 이것은 활동을 체크하였을 때 그 비콘(beacon)을 인식하는 데 사용되는 그 "스테이션 ID"를 식별하는 정보를 포함한다. 주기 정보에 이어, 어드레스 1 및 어드레스 2 블록(235, 236)은 기지국 어드레스, 본질적으로 라디오 송수신기의 MAC 어드레스를 정의한다.
특히, 블록(235)의 어드레스 1은 BSS 수신 스테이션 어드레스를 포함하고, 블록(236)의 어드레스 2는 BSS 송신 스테이션 어드레스를 포함한다. 라디오의 어드레스가 어드레스 1과 어드레스 2에 로딩된 2개의 라디오 통신은, 프레임 제어를 정의하는 블록(233)에 정의된 "To DS/From DS" 설정에 의존한다. 블록(237)에서 정의된 어드레스 3은 상기 라디오를, 예를 들어 본질적으로 방송된 데이터가 오는 곳 또는 대안적으로 수시된 데이터가 가는 곳을 설명하는 이더넷을 사용하는 물리적 네트워크에 링크시키는 데 사용된다. 따라서 어드레스 3에 있는 어드레스는 WiFi 패킷에 정의된 "To DS/From DS" 설정에도 의존한다. 이더넷 연결과의 상호 작용성을 보장하기 위해, WiFi 어드레스는 6B 길이이며, 동일한 MAC 어드레스가 이더넷 LAN에 사용된다.
데이터의 방향을 정의하고, 또한 순서가 틀린, 즉 라디오 위상 지연에 의해 영향을 받는 패킷을 재정렬할 수 있도록, 시컨스(238) 블록은 패킷 프레임을 정의하는 시컨스 및 프래그먼트 번호를 포함하고 있다. WiFi 패킷이 WDS 또는 무선 분배 시스템 패킷으로서 식별되지 않는 한, 선택적 어드레스(239)는 WiFi 패킷으로부터 배제된다. 어드레스 및 시컨스 제어 블록 후에, 페이로드(241)는 OSI 계층 3 내지 계층 7 데이터를 포함하는 WiFi 패킷에 의해 전달되는 실제 콘텐트를 포함한다. 그 후, 32 비트(32b) 순환-중복-체크 알고리즘을 이용하는 프레임 체크(240)가 계층 2 이더넷 패킷의 미가공 데이터에서의 의도하지 않은 변화를 검출하는 데 이용된다.
기재된 바와 같이, WiFi 라디오가 "액세스 포인트"로서 사용될 때, 예를 들어 모바일 디바이스를 인터넷에 라디오 연결을 제공할 때, 단지 3개의 MAC 어드레스, 즉 전송 라디오, 수신 라디오, 및 이더넷 연결만 요구된다. 어드레스의 순서는 "To DS/From DS" 설정에 정의된 바와 같이 데이터 흐름의 방향에 의존한다. DS 라는 용어는 유선 네트워크 또는 라디오가 연결된 이더넷 연결이라는 분배 시스템의 약자이다. WiFi 액세스 포인트의 경우에 WiFi 패킷의 어드레스들의 순서가 도 12a에 도시되어 있으며, 여기서 상부의 도면은 모바일 라디오가, 이 예에서는 노트북(260)이 WiFi 액세스 포인트(261)에 또한 이더넷(265)에 대한 분배 시스템으로 데이터를 무선으로 송신하는 경우를 도시하고 있으며, 또한 하부의 도면은 분배 시스템으로부터의 데이터가 이더넷(265)을 통해 WiFi 액세스 포인트(261)로 라우팅되고 그리고 무선으로 노트북(260)에 송신되는 경우를 나타내고 있다.
다시 상부 도면을 참조하면, 동작 시 데이터는 안테나(262A)로부터 전송되고 기지국 시스템 또는 BSS의 안테나(262B)에 의해 수신된 RF 신호(264)를 사용하여 노트북(260)의 WiFi 무선 디바이스로부터 송신되며, 이는 다시 상기 패킷을 이더넷(265)을 통해 분배 시스템에 송신한다. 이 경우에, 시컨스(238)는 표(263)에 도시된 "To DS/From DS" 비트를 포함하며, 상기 "To DS" 비트는 진수 1로 설정되고, "From DS" 비트는 진수 0으로리셋된다. 이러한 경우에, 블럭(235)의 어드레스 1, 라디오 목적지 MAC 어드레스는 WiFi BSS 수신기의 어드레스를 포함하고, 블록(236)의 어드레스 2, 라디오 소스 MAC 어드레스는 노트북의 전송 라디오 어드레스를 포함하며, 블록(237)의 어드레스 3은 이더넷(265)을 사용하는 임의의 분배 시스템 연결된 디바이스의 목적지 MAC 어드레스를 포함한다.
데이터 흐름이 반대 방향인 하부의 도면을 참조하면, 라디오 소스 및 목적지 MAC 어드레스는 스와핑되며, 인터넷 어드레스는 MAC 목적지 어드레스로부터 MAC 소스 어드레스로 변경된다. 이 경우에, 시컨스(238)는 "To DS" 비트가 2진수 0으로리셋되고, "From DS" 비트는 2진수 1로 설정되는 표(263)에 도시된 "To DS/From DS" 비트를 포함하며, 이에 따라 블록(235)의 어드레스 1, 라디오 목적지 MAC 어드레스는 노트북 수신 라디오 어드레스의 어드레스를 포함하고, 블록(236)의 어드레스 2, 무선 소스 MAC 어드레스는 WiFi BSS 전송기 어드레스를 포함하며, 블록(237)의 어드레스 3은 이더넷(265)을 사용하는 임의의 연결된 디바이스의 어드레스를 포함한다. 동작 시, 데이터 패킷은 네트워크 연결된 디바이스로부터 이더넷(265)을 통해 WiFi 액세스 포인트(261)의 기지국 시스템(BSS)으로 송신되며, 이는 다시 노트북(260)의 WiFi 라디오의 안테나(262A)에 의해 수신될, 안테나(262B)로부터 전송된 RF 신호(264)를 방송한다.
또한 WiFi 사양은 도 12b에 도시된 바와 같이 무선 분배 시스템 또는 WDS를 실행하기 위한 목적으로 WiFi 라디오의 사용을 제공한다. 원칙적으로, WDS는 유선 네트워크, 즉 네트워크 케이블의 RF 버전의 무선 구현이다. 그러나 WDS를 실행하기 위해, 블록(239)에 포함된 어드레스인 추가 어드레스 4가 패킷 라우팅에 요구된다. 간단히 말해서, WiFi 무선 분배 시스템에 대한 패킷 라우팅은 4개의 MAC 어드레스를 순차적으로 사용할 것을 요구하며, 이에 따라(1) 네트워크 MAC 소스 어드레스로부터 들어오는 패킷은 이더넷을 통해(2) 전송 라디오 소스 MAC 어드레스에 연결되고, 다시 무선으로(3) 수신 라디오 목적지 MAC 어드레스에 연결하며, 이는 마지막으로 이더넷을 통해 패킷을(4) 네트워크 MAC 목적지 어드레스에 송신한다. WDS 모드에서 WiFi 라디오를 동작시키기 위해, WiFi 패킷 시컨스 블록(238)은 "To DS" 및 "From DS"가 모두 진수 1 상태로 설정된 표(263)에 도시된 데이터를 포함한다.
패킷의 데이터 방향은 4개의 MAC 어드레스(분배 시스템 네트워크를 위한 2개와, WiFi 라디오를 위한 2개)의 사용에 의해 쉽게 결정된다. 도 12b의 최상부 그래픽을 참조하면, 이더넷(269A) 상에 수신된 들어오는 패킷은 WDS A 기지국(268A)에 의해 수신되고, 전송 라디오의 안테나(262A)로부터 RF 신호로서 방송되며, 라디오 WiFi WDS B 기지국의 수신 안테나(262B)에 의해 수신되어, 이더넷(269B)을 통해 목적지 MAC 어드레스로 포워딩된다. 라우팅을 제어하기 위해, 블록(235)의 어드레스 1은 무선 링크의 목적지 MAC 어드레스, 즉 WiFi WDS B 어드레스를 나타내고, 블록(236)의 어드레스 2는 무선 링크의 소스 어드레스, 즉 WiFi WDS A 어드레스를 나타내며, 블록(237)의 어드레스 3은 이더넷(269B) 상으로 포워딩된 이더넷 목적지 MAC 어드레스를 나타내고, 블록(239)에서 어드레스 4는 이더넷(269A) 상에 수신된 이더넷 소스 어드레스를 포함한다.
도 12b의 아래쪽 그래픽에 도시된 WiFi WDS B 기지국(268B)으로부터 WiFi WDS 기지국(268A)의 반대 방향으로 흐르는 데이터의 경우, 소스 및 목적지 어드레스는 간단히 스와핑되며, 이에 따라 블록(235)의 어드레스 1은 무선 링크의 목적지 MAC 어드레스, 즉 WiFi WDS A 어드레스를 나타내며, 블록(236)의 어드레스 2는 무선 링크의 소스 어드레스, 즉 WiFi WDS B 어드레스를 포함하며, 블록(237)의 어드레스 3은 이더넷(269A) 상에 포워딩된 이더넷 목적지 MAC 어드레스를 나타내고, 블록(239)의 어드레스 4는 이더넷(269B) 상에 수신된 이더넷 소스 어드레스를 포함한다.
이런 방식으로, WiFi 패킷은 어드레스 3을 목적지 MAC 어드레스로 포함하는 이더넷 데이터 프레임, 및 무선 링크가 라우팅에 존재하지 않더라도 소스 MAC 어드레스로서 어드레스 4를 미러링한다. 따라서 WiFi 실행된 무선 배포 시스템은 패킷 교환형 네트워크를 통해 패킷을 라우팅할 때 유선 네트워크처럼 동작한다. 또한, "To DS/From DS"의 기능은 비트를 제어하여, 동일한 WiFi 무선 디바이스가 양방향 데이터 링크, 즉 WDS로서, 또는 네트워크 액세스 포인트로서 양방향으로 동작하도록 허용하는 것이다.
4G 전화기술/롱 텀 에볼루션(Long Term Evolution)(LTE) - 유선 전화기술이 회선 교환형 전화기술 네트워크로부터 패킷 교환형 통신으로 이전하여, POTS 및 PSTN을 먼저 ISDN 과 같은 독점 하드웨어 기반 디지털 네트워크로, 그 후 개인 관리형 컴퓨터 클라우드 상에서 실행되는 인터넷 프로토콜 기반 네트워크으로 대체하였기에, 무선 통신도 발전했다. 도 13에 도시된 바와 같이, 디지털 셀룰러 통신의 발전은 본래 "Groupe Special Mobile"의 약자이고 그리고 나중에 "모바일 통신을 위한 글로벌 시스템 "으로 바뀐 GSM으로지칭되는 회선 교환형 네트워크에 대해 전달된, 음성 및 간단한 메시징 서비스 또는 SMS 서비스(290)로 시작되었다. 전이중 음성 통신에 최적화된 GSM은 2세대 또는 2G 무선 전화로 간주되어 시-분할 다중 액세스[TDMA(time-division multiple access)] 프로토콜을 사용하여 본래의 아날로그 셀룰러 또는 1G 네트워크를 대체했다. 블록(291)에 도시된 전화기술의 다음 개선은, 더 높은 대역폭을 제안하고 또한 멀티미디어 메시징(MMS)과 같은 기능을 추가함으로써 GSM의 능력을 보완하기 위해 등장했다. 여전히 회선 교환형 네트워크 기술에 의존하면서, 상기 강화된 네트워크는 2.5G 라는 이름으로 반영된 절반 단계의 개선으로 간주되었다.
제1 단계 내지 3G 모바일 전화기술은, 무선 기반 시설과 전화 소프트웨어 모두를 패킷 교환형 통신 네트워크으로 전이시킴으로써, 블록(292)에 의해 도시된 바와 같이 푸시 투 토크(push to talk)에 의한 또는 PTT 에 의한 음성, SMS 및 MMS 서비스 향상, 상시 연결 인터넷, 무선 애플리케이션 프로토콜 또는 WAP, 등을 강화함으로써, "일반 패킷 라디오 서비스" 또는 GPRS(general packet radio service)의 도입으로 발생되었다. 코드 분할 다중 액세스 또는 CDMA 에 기초하여, GPRS는 통화 품질을 향상시켰고, 네트워크 용량을 증가시켰으며, 시스템 성능을 향상시켰다. 예를 들어, GPRS 에 대한 SMS 메시징은 GSM의 비율보다 적어도 3배의 메시지를 전달했다. 384 kbps에서, CDMA의 성능은 이전 GSM 솔루션보다 40배 더 빠르다.
CDMA로의 전환은 전 세계 모바일 통신 기반 시설을 새로운 송수신기 및 안테나로 대체 및 재설치하는 단계를 포함하기 때문에, 중요한 사건이었다. 일단 전개되었다면, WCDMA는 진정한 범용 네트워크 및 표준화된 프로토콜을 형성하고 전개하기 위한 더욱 글로벌하고 또한 포괄적인 접근을 아우르는 3 세대 파트너십 프로젝트 또는 3GPP(3rd Generation Partenership Project)에 의해 개발된 표준인 "범용 모바일 통신 시스템"인 UMTS(universal mobile telecommunications system)의 도입으로 3G 전화에서 두 번째로 중요한 단계를 가능하게 했다. 그 능력을 강화시키고 네트워크 대역폭을 확장시키기 위해, UMTS는 새로운 프로토콜, 광대역 코드 분할 다중 액세스 또는 WCDMA 라디오 액세스 기술을 채택하여, 그 3G 하드웨어 투자의 대체를 요구 없이 모바일 네트워크 동작자에게 더욱 우수한 스펙트럼 효율 및 대역폭을 제안했다. 초기 네트워크는 3.6 Mbps 피크 다운링크 레이트를 제안했다.
동시에, 처음으로 가능해진 백색 LED와 효율적인 소형 LED 구동 회로의 동시 개발, 모바일 디바이스에서의 컬러 디스플레이의 사용은 스마트폰을 탄생시켰다. 스마트폰은 고품질의 컬러 디스플레이가 빠른 인터넷 액세스, 영화 다운로드, 고해상도 사진, 멀티미디어 방송, 및 심지어 제한된 실시간 비디오 스트리밍에 대한 즉각적인 수요를 창출하였기 때문에, 네트워크 대역폭을 상업적으로 구동하기 위한 중요한 촉매제였다. 요구를 충족시키기 위해, 3.5G로서 알려진 고속 패킷 액세스(high-speed packet access)(HSPA)가 업그레이드된 네트워크에 배치되어, 여전히 WCDMA 변조 기술을 사용하면서 업로드 및 다운링크 속도를 향상시켰다. 고속 다운로드 패킷 액세스 또는 HSDPA로 위상에 발생된 롤아웃은, 먼저 3GPP 릴리스 5로서, 그리고 후에 곧 3GPP 릴리스 6에서 유용하게 된 고속 업로드 패킷 액세스 또는 HSUPA 3GPP 릴리스 6으로 릴리스되었다. 피크 데이터 전송률은 다운링크에서 약 14 Mbps로 향상되었으며, 업 링크에서는 약 5.8 Mbps 이지만 기반 시설에 따라 지리적으로 크게 변한다.
HSUPA 가 널리 전개되기 전에도, 셀룰러 동작자는 "3GPP 롱 텀 에볼루션" 또는 LTE로도 알려진 3GPP Release 8 에서 처음 정의되고 표준화된 HSPA+로 이동하였다. 이 기술은 이미 논의된 WiFi 에서 사용된 것과 동일한 OFDM 방식에 기초하여, "직교 주파수 분할 다중 액세스" 또는 OFDMA 에 기반한 패킷 교환형 전용 네트워크를 나타낸다. OFDM 이 단일 사용자 점 대 점 통신을 위해 개발되었지만, OFDMA는 그 부반송파의 서브세트를 개별적인 사용자에게 부반송파의 동적으로 할당할 수 있기 때문에, 다중 사용자 버전으로 간주될 수 있다.
초기 HSPA+ 기반 LTE 전개는 21 Mbps 에서 시작되었다. 2008년에, 국제 전기통신 연합-라디오(International Telecommunications Union-Radio) 또는 ITUR 통신 섹터는 4G 표준을 위한 요구 사항을 국제 이동 통신 어드밴스트(International Mobile Telecommunications Advanced) 또는 IMTA 사양으로 지정하고, 열차 및 차량으로부터와 같은 높은 이동성 통신을 위한 100 Mbps, 및 보행자 및 정지형 사용자처럼 낮은 이동성의 통신을 위한 1 Gbps 에서 4G 서비스를 위한 최소 피크 속도 요구사항을 설정했다
초기 HSPA+기반 LTE 시스템이 IMTA 속도 사양에 부합하지 않았기 때문에, 이런 초기 4G는 이들이 OFDMA 변조 및 전체 패킷 교환형 네트워크를 이용했다는 사실에도 불구하고 공식적으로 4G 전화기술로 인식되지 않았다. 결과적으로, HSPA+ 기술을 늦은 3G 또는 초기 4G 패킷 교환형 전화로 간주할지의 여부에 대한 합의가 없다. 심지어 3.9G 라는 이름조차 제안되었다. 명명 문제와는 관계없이, 블록(293)에 도시된 4G 전화기술은 현재 OFDMA 변조 및 그 다양한 실행에 기초하여 패킷 교환형 통신을 지칭하고 있다. 데이터 프로토콜의 기술적 및 역사적 변형과 비균일한 무선 네트워크의 사용에도 불구하고, 인기 있는 토착어에서는 4G, LTE, 및 4G/LTE 가 용어가 모호하게 그리고 상호 교환적으로 사용되고 있다.
4G/LTE 전화기술의 높은 데이터 전송률과 비교적 견고한 성능은, 그 변조 방식과 데이터 프레임 구조에 크게 기인한다. 도 14a에 도시된 바와 같이, 4G 변조는 부반송파 주파수 대역으로 세분되는, 전형적으로 700 MHz 내지 2.6 GHz 범위의 중앙 반송파 주파수의 둘레에서 20 MHz 대역폭까지를 포함하고, 여기서 하향 링크 통신은 OFDMA 에 의해 요구되는 부반송파 채널을 실행하는 데 필요한 많은 좁은 대역들(296A 내지 296N)로 세분된다. 모바일 디바이스에서 전력을 절약하기 위해, 업링크 통신은 보다 적은 광대역(295A 내지 295N)으로 세분화되며, 또한 주파수 분할 다중 액세스 기술 또는 SC-FDMA의 단일 채널 버전을 사용한다. 다중 사용자들을 동시에 지원하기 위해 다양한 대역(295A 내지 295N)이 사용되지만, OFDMA 와는 달리 하나의 고속 데이터 스트림을 다수로 분할하는 데는 사용되지 않는다. 그 결과, SC-FDMA 업로드 데이터 전송률은 필연적으로 OFDMA 기반 다운로드 데이터 전송률보다 느리다.
이하의 표에 나열된 허가받은 반송파 주파수는, 글로벌 로밍용으로 설계된 다중 대역 또는 세계 전화(world phone)를 사용하지 않는 한, 한 국가로부터의 전화가 다른 국가에서는 동작하지 않는 지역에 의해 변한다.
지역 주파수(MHz) 대역
북아메리카 700, 750, 800, 850, 1900, 1700/2100(AWS), 2500, 2600 4, 7, 12, 13, 17, 25, 26, 41
남아메리카 2500 3, 7, 20
유럽 800, 900, 1800, 2600 3, 7, 20
아시아 1800, 2600 1, 3, 5, 7, 8, 11, 13, 40
호주/뉴질랜드 1800, 2300 3, 40
위의 허가받은 주파수는 다양한 지역에서 라디오 주파수 라이센스를 관리하는 통신위원회에 기초하여 변경될 수 있다.
도 14b에 도시된 바와 같이, 4G PHY 계층은 4G 패킷 또는 프레임(300)을 형성하기 위해 길이 10 ms의 RF 데이터 버스트를 포함한다. 각각의 프레임(300)은 7OFDM 심볼(302)을 포함하는 0.5 ms 주기의 20개의 슬롯으로 재분할된다. 주기적인 프리픽스(prefix)(303)에 의해 서로 분리되며, 또한 0 내지 49로 번호가 매겨진 50개의 리소스 블록(305)을 포함하며, 각각의 블록(306)은 7개의 심볼 및 12개의 부반송파를 포함하는 84개의 리소스 요소(307)를 포함한다. 이 데이터 구조는 높은 비트 전송률을 구현하고, 중복성을 제공하며, 및 에러를 완화하기 위해 사용되는 유연한 인코딩을 지원한다.
도 15는 4G 데이터 다운로드에 사용되는 OFDMA 변조를 위한 4G 데이터 프레임(299) 내의 데이터 링크 계층 2 콘텐츠의 캡슐화를 도시하고 있다. 유사한 4G 데이터 패킷이 SC-FDMA 업로드를 위해 존재하지만, 그러나 도시된 패킷과의 유사성 때문에 여기에는 포함되지 않는다. 도시된 바와 같이, 각각의 PHY 계층 1 데이터 패킷 또는 "데이터 프레임"(299)은 데이터 링크 계층 2를 캡슐화하는 20개의 0.5 ms 슬롯(301)을 갖는 10 ms 프레임(300)을 포함한다. 4G 패킷의 계층 2 데이터 링크 콘텐트는 아래를 포함하는 3개의 딥에 네스트된다.
- 미디어 액세스 제어를 위한 MAC 하위 계층
- "무선 링크 제어"를 위한 RLC 하위 계층
- "패킷 데이터 컨버전스 프로토콜"을 위한 PDCP 하위 계층
계층 2 MAC 서브 계층은 MAC 헤더(303), MAC SDU(304)의 단일-프레임, 및 시간 패딩(time padding)(305)을 포함하며, 상기 용어 SDU는 서비스 데이터 유닛(service data unit)에 대한 약자이다. MAC 헤더(303)는 라디오 연결에 필요한 소스 및 목적지 MAC 어드레스를 포함한다. MAC SDU(304)의 각각의 단일 프레임은 다시 라디오 동작을 제어하는 데 사용되는 "무선 링크 제어 프로토콜 데이터 유닛"에 대한 약자인 계층 2 "RLC PDU"(306)를 포함한다. 특히, RLC PDU(306)는 라디오 동작 및 프로토콜에 관한 정보를 지정하는 RLC 헤더(307)를 포함하며, 또한 "무선 링크 제어 서비스 데이터 유닛" 정보, 즉 그 안착된 페이로드로서 단일 프레임 RLC SDU(308)를 캡슐화한다. 시간(309)에서 RLC SDU(308)의 완료에 이어, RLC 헤더(311)를 구비한 새로운 무선 링크 제어 데이터 및 다른 RLC SDU의 세트는, 짧은 지연 시간(310) 이후에 시작된다. 그 결과는 다중-프레임 RLC SDU(319)의 연속적인 데이터 프레임이며, 여기서 K 및 K+1 블록(313, 314)에 대한 데이터는 단일 프레임 RLC SDU(308)에 의해 배타적으로 운반되고, K+2 블록(314)은 현재 프레임으로부터 그리고 다음 프레임으로 모두 두 블록(308)으로 구성된다.
계층 2 패킷 데이터 변환 프로토콜 서브 계층에서, 각각의 SDU 블록은 PDCP 헤더와 PDCP SDU의 조합을 포함한다. 예를 들어, K 블록(313)은 PDCP 헤더(312A) 및 PDCP SDU(323)를 포함하고, K+1 블록(314)은 PDCP 헤더(321B) 및 PDCP SDU(324)를 포함하며, K+2 블록(315)은 PDCP 헤더(321C) 및 PDCP SDU(325)를 포함하여, 종합적으로 PDCP PDU(320)을 형성한다. 콘텐츠 PDCP SDU(323, 324, 325)는 4G 패킷의 페이로드(330), 즉 네트워크, 전송 및 애플리케이션 계층 데이터를 포함하는 데이터 블록(333, 334, 335)을 포함한다. 오늘날 4G/LTE 통신을 조립하고, 전송하고, 수신하고, 및 디코딩하는 데 요구되는 전술한 모든 처리는 단일의 전용 통신 IC 또는 디지털 신호 프로세서(DSP)에서 수행된다.
전술한 4G 계층 2 프로토콜을 사용하여, 4G는 이전 네트워크 및 통신 표준에 비해 다음과 같은 다양한 향상된 기능을 제안한다.
- 다중 입력 다중 출력 또는 MIMO 기술을 활용하여 데이터 전송률을 극대화하고 높은 QoS 연결성을 보장하는 기능.
- 주어진 애플리케이션을 위해 가장 적절한 서비스 매개변수, 예를 들어 그중에서도 비용, QoS, 및 용량을 동적으로 식별하기 위해, 다중 라디오 네트워크에 동시에 연결하도록 소프트웨어 기반 라디오 사용.
- 기술 내 및 기술 외 핸드오버를 지원하는 기지국을 이용하여, 품질의 눈에 띄는 손실 없이, 0 또는 최소 중단으로 서비스 연속성을 보장.
- 다른 모바일 및 무선 네트워크 상에서 서비스 및 애플리케이션에 동시에 액세스할 수 있는 능력.
4G/LTE 통신의 애플리케이션은 HD 및 UHD 비디오 스트리밍, 클라우드 컴퓨팅, 고용량 클라우드 기반 스토리지 및 온라인 백업, 보다 빠른 웹 액세스, 대용량 이메일 파일 송수신 능력 등을 포함한다.
DOCSIS3/케이블 및 광섬유 네트워크 - 최근까지, 케이블 TV 및 광섬유 비디오 분배 시스템 패킷 교환형은 디지털 방송 및 패킷 교환형 기술 채택에 있어 통신 산업의 나머지 부분에 비해 뒤떨어진다. 그러나 "데이터 오버 케이블 서비스 인터페이스 사양" 또는 DOCSIS3의 3세대 릴리스의 급속한 채택에 의해, 케이블 네트워크 기능이 극적으로 향상되어, 다수의 클라이언트에게 다중 채널의 고 대역폭 통신을 동시에 서비스하는 독특한 능력을 제공한다. DOCSIS3는 수백 개의 방송 및 프리미엄 TV 채널, 페이퍼 뷰를 위한 유니 캐스트 TV, 및 IPTV 다운로드를 포함하는 고해상도 비디오 스트리밍의 다중 채널을 지원할 뿐만 아니라, 고속 디지털 양방향 통신 및 인터넷 액세스, VoIP를 제공한다.
여러 독립적인 사용자를 지원하는 DOCSIS3 기반 케이블 및 광섬유 네트워크의 예가 도 16에 도시되어 있다. 케이블 분배에 있어서, 콘텐트 및 클라이언트 통신의 관리는 "케이블 모뎀 종단 시스템" 또는 CMTS(350)으로서 알려진 중앙 케이블 헤드엔드 디바이스로부터 지향된다. 다양한 디바이스가 IPTV 및 영화 다운로드뿐만 아니라 네트워크 TV를 전달하는 비디오 헤드엔드(351), 페이퍼 뷰 캐스트를 전달하는 IPTV 시스템(352), 전화기술을 위한 VoIP 시스템(352), 및 웹 및 클라우드 연결성을 위한 인터넷(20)을 포함하는 CMTS(350)에 콘텐트를 공급하고 있다. 고속 디지탈(HSD), 인터넷 전화(VoIP), 방송, 및 IPTV를 포함하는 모든 정보는 단일의 동축 케이블 또는 광섬유 상에 운반되는 다중 채널(354)로서 클라이언트에 송신된다.
그 후, CMTS(350)로부터 분배된 데이터 패킷은 다양한 가입자에게 연결되며, 셋톱박스(CM/STB)(357)에 병합된 케이블 모뎀을 포함하는 디바이스는 고화질 TV(39)에 연결되며, 또는 케이블 모뎀(CM)(358)은 전화기(37)에 음성을, 그리고 데스크탑(38) 및 가정용 WiFi 송신기(26)에 고속 디지탈 연결성을 공급하는 데 사용된다. 버스 및 허브 네트워크와 유사한 방식으로, 채널(354) 상에 운반된 모든 콘텐트는 모두 동일한 케이블 또는 광섬유 상에 운반되어, 연결된 모든 CMTS 디바이스에 의해 수신된다.
DOCSIS3 에 의해, 케이블 모델 종단 시스템 CMTS350은 모든 콘텐츠가 모든 가입자에게 반드시 배포되는 것은 아니라는 교환형 네트워크로 되었다. "번들링(bundling)"으로서 알려진 이 기능은 CMTS350이 어떤 채널이 다양한 가입자의 연결된 디바이스에 의해 수신될 수 있는지 제어하는 것을 허용한다. 도시된 바와 같이, 번들링된 채널(355)은 TV(39) 및 IPTV를 위한 콘텐트를 운반하는 반면에, 번들형 채널(356)은 고속 디지털 콘텐트 및 음성을 전달한다. 통합 된 케이블 모뎀 및 셋톱박스 CM/STB(359)는 스마트 TV 인 TV(39)에 유용한 케이블 번들(355, 356) 모두에 액세스할 수 있으며, 데스크탑(36), 전화(37), 및 홈 WiFi(26)를 위해 사용되는 케이블 모델 CM(360)은 비디오 연결성을 필요로 하지 않기 때문에 HSD/VoIP 번들형 채널에만 연결된다.
이더넷, WiFi, 및 4G/LTE의 이전 사례와 마찬가지로, 케이블 및 광섬유에 대해 DOCSIS3을 사용하는 콘텐트 배포는 교환 기술을 사용하여 모두 실행되는, 전이중 동작이 가능한 양방향이다. 그 PHY 계층 상에 정보를 전달하기 위해 전기 또는 마이크로파 신호 대신 광을 사용함으로써, 광섬유는 특히 다른 형태의 통신에 비해 우수한 대역폭을 제안한다. 케이블 분배 시스템에서 DOCSIS3 에 대한 OSI 통신 스택이 도 17에 도시되어 있으며, 도 17은 케이블 연결된 디바이스, 예를 들어 케이블 모뎀(CM)(103) 또는 셋톱박스(STB)(102)의 예와 마찬가지로, 케이블 모뎀 종단 디바이스 CMTS(101) 모두를 위해 계층 1 PHY 연결성, 계층 2 데이터 링크, 및 위에 있는 계층 3 네트워크를 도시하고 있다. 특히, 케이블 모뎀 종단 디바이스(CMTS)(101)는 클라우드 서버(22) 및 인터넷(20)에 연결된, 또는 대안적으로 이전 도면에 도시된 비디오 헤드엔드(351), IPTV 시스템(352), 또는 VoIP 시스템에 연결된, 계층 1 PHY 네트워크 인터페이스(361)를 포함한다. 네트워크 인터페이스(361)와 데이터 링크 계층(366)의 조합은, CMTS(101)의 디바이스 인터페이스 통신 스택을 포함한다.
데이터 링크 계층 2 상에서, 데이터는 특히 링크 레벨 제어 LLC(369) 내로의 포워딩 기능(370)을 통해 네트워크 인터페이스 통신 스택으로부터 케이블 네트워크 인터페이스 통신 스택으로 통과된다. 링크 레벨 제어 LLC(369)는 IEEE 사양 802.2 에 따라 정의된 하드웨어-독립형 프로토콜을 포함한다. 그 후, 패킷 데이터는 제한된 패킷 보안을 제공하기 위해, 주로 페이퍼 뷰 유니 캐스트 방송과 같은 콘텐츠의 무단 시청을 방지하기 위해, 링크 보안(368)에 의해 변조된다. 데이터 패킷은 도 10의 WiFi 라디오 브릿지에 의해 도시된 예와 유사한 방식으로 케이블 MAC(367) 어드레스를 포함하도록, DOCSIS3 에 따라 포맷된다. 그 후, 계층 1 PHY 케이블 인터페이스(362)는 케이블 모뎀 CM(103) 또는 셋톱박스(STB)(102) 내에서 대응의 계층 1 PHY 케이블 인터페이스(363)에 동축 케이블(104) 또는 광섬유(91)를 포함하는 분배 네트워크(102)에 대해 데이터 프레임을 송신한다. 케이블 인터페이스(363)는 케이블 모뎀 CM(103) 셋톱박스(STB)(102)의 케이블 네트워크 인터페이스 통신 스택의 PHY 계층을 나타낸다.
데이터 패킷의 수신에 따라, 케이블 MAC 인터페이스(371)는 그 페이로드를 해독을 위해 링크 보안(372)에, 궁극적으로는 해석을 위해 하드웨어 독립 링크 계층 제어 LLC(373)를 통과시킨다. CM 또는 STB 케이블 네트워크 통신 스택으로의 입력 데이터는, 투명 브릿지(374)를 통해 CM 또는 STB 디바이스 인터페이스 통신 스택, 특히 IEEE 802.2 에 대한 사양에 따라 디바이스 독립 링크 계층 제어 LLC(375)를 통과한다. 그 후, 상기 패킷은 HSD & IPTV MAC 블록(376) 또는 WiFi 802.11 MAC 블록(377)을 통과하여, 패킷의 MAC 어드레스를 업데이트한다. WiFi 통신의 경우, 데이터 패킷은 WiFi 라디오(26) 상에서의 전송을 위해 802.11 MAC 블록(377)으로부터 WiFi PHY 계층 1 라디오 인터페이스(365)를 통과한다. 유선 연결의 경우에, 상기 데이터 패킷은 그 후 TV(39) 또는 데스크탑(36)으로의 연결을 위해 HSD & IPTV MAC 블록(376)으로부터 이더넷 또는 HDMI 인터페이스 블록(364)을 통과한다.
WiFi 에서 사용되는 OFDMA 또는 4G/LTE 통신에서 사용되는 OFDM 과 유사하게, DOCSIS3 통신은 그 정보를 인코딩하고 전송하는 전자기 방사선의 마이크로파 또는 광 스펙트럼에서 다중 직교, 즉 중첩되지 않는 주파수를 사용한다. 각각의 채널에 특히 전용의 콘텐트를 할당하기보다는, DOCSIS3은 비디오, 고속 데이터, 및 음성을 포함한 콘텐트를 그 사용 가능한 모든 주파수 채널을 통해 동적으로 할당하고 재할당하는 기능인 "트렐리스 인코딩(trellis encoding)"을 지원한다. 하나 내지 6개의 채널을 이용하는 도 18의 몇몇 인코딩 예에 도시된 바와 같이, 주어진 타입의 콘텐트를 나타내는 데이터 패킷은 단일 채널에 할당되거나 또는 다수의 채널에 걸쳐 할당될 수 있다. 데이터는 채널(385)에 의해 그리고 시간 슬롯(386)에 의해 배열된다. m = 1(QPSK)로 표시된 예에 있어서, 시간 슬롯 t0 내지 t8은 단일 소스 # 1로부터 콘텐츠를 전달하기 위해 단일 채널 상에 인코딩된다. m = 2(8-QAM)로 표시된 예에 있어서, 8-QAM을 사용하여 인코딩된 2개의 채널은 2개의 소스로부터 콘텐트를 전달하기 위해 사용된다. 변조 방식, 직교 진폭 변조 또는 QAM은 이전에 설명한 WiFi 에 의해 사용된 것과 동일하므로, 여기에서는 반복하지 않는다. 소스 # 1은 시간(t0)으로부터 t4 까지 데이터를 전달하며, 그리고 소스 # 2로부터 t4로부터 t8 까지 데이터를 전달한다. m = 3(16-QAM)으로 표시된 예에 있어서, 16-QAM을 사용하여 인코딩된 3개의 채널은 3개의 소스로부터 데이터를 전달하는 데 사용된다. 콘텐트(390)를 채널 m = 1 에서 시간(t0) 부터 시간(t8)까지 전달하는 소스 # 2 와 동시에, 소스 # 1은 채널 m = 2 에서 시간(t0) 부터 시간(t8)까지 콘텐트(391a)를 전달하며, 소스 # 2는 시간(t4) 부터 시간(t8)까지 콘텐트(391b)를 전달한다.
m = 5(64QAM)으로표시된 예에 있어서, 64QAM을 사용하여 인코딩된 6개 채널이 5개의 소스로부터 콘텐트를 전달하는 데 사용된다. 예를 들어, m = 2로 표시된 m = 5의 2개의 서브-채널 상에서, 소스 # 3으로부터의 콘텐트는 시간(t0)으로부터 시간(t4)까지 전달되고 소스 # 3으로부터의 콘텐트는 시간(t4)으로부터 시간(t8)까지 전달된다. 반면에, m = 4로 표시된 서브 채널 상에서, 소스 # 1로부터의 콘텐트는 시간(t0)으로부터 시간(t2)까지 4개의 채널 상에서 전달되고, 그 후에는 시간(t2)으로부터 시간(t3)까지 3개의 채널에서만 전달된다. 소스 # 2로부터의 콘텐트는 4개의 채널 중 하나에서만 시작하고, 그 후 시간(t = t3 에서 m = 4로 증가한다. m = 6(128QAM)으로표시된 예에 있어서, 소스 # 3으로부터의 콘텐트(389)는 시간(t0)으로부터 시간(t4)까지 6개 중 2개의 채널 상에서 전달되는 반면에, 나머지 4개의 채널은 시간(t0)으로부터 t2 까지 소스 # 1로부터의 콘텐트(388a)를 전달하고 또한 소스 # 2로부터의 콘텐트(388b)를 시간(t2)부터 시간(t4)까지 전달하는 데 사용된다. 도시된 예에 있어서, 트렐리스 인코딩은 케이블 동작자에게 대역폭 관리 및 콘텐트 할당에 있어 최대의 유연성을 제공한다.
도 19에 도시된 DOCSIS3 에서 사용되는 대응의 데이터 패킷에 있어서, PHY 계층 1은 프리앰블(391), 가변 길이 페이로드 또는 코드 워드(392), 및 가드 타임(393)을 포함하는 데이터 링크 계층 2 MAC 데이터를 포함하는, 가변 길이 및 주기의 물리적 미디어 디바이스 프레임(390)을 포함한다. 프리앰블(391)은 통신의 방향에 따라 업스트림 프리앰블 또는 다운스트림 프리앰블을 포함한다. 업스트림 프리앰블의 경우에 있어서, 프리앰블(391)은 물리적 미디어 디바이스(PMD) 헤더(398), MAC 헤더(399), 및 데이터 PDU(400)를 포함한다. 다운스트림 프리앰블의 경우에 있어서, 프리앰블(391)은 MPEG 헤더(401), MAC 헤더(399) 및 데이터 PDU(400)를 포함한다. 가변 길이 페이로드(392)의 콘텐트는 짧은 코드 워드(394) 또는 긴 코드 워드(397)를 포함할 수 있다.
짧은 코드 워드(394)는 데이터 A를 포함하는 페이로드(395A), 및 FEC A를 포함하는 에러 보정(396A)을 포함한다. 긴 코드 워드(397)의 경우, 페이로드는 데이터 A, 데이터 B, 및 데이터 C를 각각 운반하는 다중 페이로드 블록(395A, 395B, 395C)으로 분할되며, 각각의 페이로드는 대응하는 데이터 FEC A, FEC B, 및 FEC C를 포함하는 그 자체 에러 체킹 블록(396A, 396B, 396C)을 포함한다. 에러 체킹 후, DOCSIS3으로부터의 전달된 데이터는 긴 코드 워드의 경우에는 데이터 블록(395A, 395B 395C)을, 짧은 코드 워드의 경우에는 단지 데이터 블록(295A)만을 포함한다.
이러한 방식으로 DOCSIS3는 패킷 교환형 데이터 프로토콜을 사용하여 케이블 네트워크에 대해 데이터를 유연하게 전달한다.
OSI 계층 3 - 네트워크(인터넷) 계층
전술한 바와 같이, 데이터 페이로드는 다양한 PHY 계층 1 하드웨어 구성, 및 데이터 링크 계층 2 인터페이스 프로토콜에 대해 전달될 수 있다. 계층 1 및 계층 2는 디바이스에 지정한 반면에, 계층 3, 네트워크 계층은 통신, 유비쿼터스의 형태에 독립적이고 또한 신호 및 데이터를 운반하는 데 사용되는 PHY 네트워크에 불가지론적인 디바이스를 제공한다. 도 20에는 컴퓨팅 및 데이터 저장 기능(423A, 423B 또는 423C)을 포함하는 3개의 네트워크 연결된 디바이스(420A, 420B, 420C)가 모두 인터넷 연결성(421)을 공유하는 계층 3 통신이 도시되어 있다. 따라서 각각의 디바이스의 대응하는 통신 스택(422A, 422B, 422C)은 디바이스를 계층 3 네트워크(421)를 사용하여 서로 연결하며, 이는 독점적인 시스템을 제외하고는 일반적으로 인터넷을 나타낸다.
다양한 하드웨어 플랫폼, 네트워크, 및 시스템에서 동작하는 패킷 교환형 네트워크의 상호 작용성을 보장하기 위해, OSI 모델은 도 21에 도시된 바와 같이 7개의 계층으로 구성된 잘 정의된 프로토콜을 규정한다. 이미 언급한 바와 같이, 각각의 나무 인용이 그 내측에 다른 더 작은 인형을 포함하는 바부시카 또는 러시아 중첩 인형처럼, 패킷 교환형 네트워크를 위한 데이터 패킷 또는 "데이터그램"은 계층 1, PHY 계층 패킷 또는 "프레임"이 계층 4 네트워크를 패킷 등을 포함하여, 다시 계층 3 내지 7을 포함하는 페이로드를 캡슐화하는 계층 2를 포함하는 그 페이로드 내에 다른 모든 계층을 포함하는 유사한 방식으로 배치된다.
보다 상세하게는, 계층 1 프레임(430)은 전기, 라디오, 또는 광학 신호를 포함하는 물리 계층 또는 PHY 계층의 모든 데이터를 포함한다. MAC 헤더(431), MAC 페이로드(432), 및 MAC 푸터(footer)(433)를 포함하는 계층 2 상의 미디어 액세스 제어 또는 데이터 링크 계층 정보는, PHY 계층 데이터(430) 내에 내장된다. MAC 페이로드(432)는 인터넷 프로토콜 또는 IP 헤더(434) 및 IP 페이로드(435)를 포함하는 계층 3 상에 네트워크(인터넷) 계층 또는 IP 패킷을 캡슐화한다. 상기 IP 페이로드(435)는 전송 헤드(436) 및 전송 페이로드(437)를 포함하는 전송 계층 데이터그램 또는 계층 4 데이터를 캡슐화한다. 상기 전송 페이로드(437)는 그 후 도 4에 도시된 OSI 모델과 일치하는 애플리케이션 계층 5 내지 7을 위해 애플리케이션 데이터(438)를 캡슐화한다.
동작 시, 도 21에 도시된 IP 데이터 패킷의 수신에 따라, 네트워크 연결된 디바이스 및 그 펌웨어는 계층 1 및 계층 2 데이터를 해석하고, 또한 MAC 페이로드(432) 내에 포함된 임의의 정보를 무시한다. 네트워크 소프트웨어는 다시 IP 어드레스, 라우팅, IP 계층 3 데이터 내에 포함된 제어를 해석하지만, 그러나 IP 페이로드(435)의 내용을 무시한다. 전송 계층 4 소프트웨어는 그 후 IP 패킷의 안정적인 전달을 보장하기 위해, IP 페이로드(435) 내에 포함된 정보를, 통신 당사자 사이에 임의의 요구되는 핸드세이킹을 제공하는 전송 헤더(436) 및 전송 페이로드(437)를 포함하는 전송 계층 "데이터그램"으로서 해석한다. 전송 페이로드(437)는 세션 계층 5, 프리젠테이션 계층 6, 및 애플리케이션 계층 7 에 대한 데이터를 포함하는 패킷을 포함하는 나머지 상위 계층 애플리케이션에 대한 애플리케이션 데이터(438)를 포함하는 정보를 캡슐화한다. 요약하면, 계층 1 및 계층 2는 네트워크 연결된 디바이스를 위한 물리적 연결 및 규칙을 설정하는 것과 관련이 있고, 계층 3 및 계층 4는 IP 패킷의 수신자를 식별하고 그 전달을 확인하는 것과 관련이 있으며, 계층 5 내지 계층 8은 데이터 페이로드로서 전달되는 실제 정보를 포함한다. 따라서 계층 1 및 계층 2 하드웨어 및 펌웨어는 송신되는 데이터의 콘텐츠나 또는 그 애플리케이션에 관심이 없으며, 계층 3 및 계층 4 네트워크 소프트웨어는 물리적 디바이스가 패킷을 전송하는지 또는 패킷의 콘텐트가 무엇이지는 관심이 없으며, 계층 5 내지 7은 패킷이 전송되는 방법이나 수신이 확인되었는지의 여부에는 관심이 없다. 이러한 방식으로, 알려지지 않은 콘텐트의 데이터그램의 라우팅은 패킷 전송에 사용된 하드웨어에 대한 그 어떤 관심 없이 패킷 교환형 네트워크에서 또는 패킷 데이터의 의도된 사용으로 관리될 수 있다.
상호 동작성을 유지하기 위해, 네트워크에 대해 전송된 패킷은 실제 네트워크가 인터넷에 직접 연결되어 있지 않은 경우라도, 인터넷 프로토콜 또는 IP로서 알려진 표준화된 포맷을 사용한다. 계층 3 연결성은(1) 인터넷에 직접 연결된 호스트 또는 사설 서버에 대한 통신, (2) 사설 폐쇄 형 네트워크 또는 인터넷에 연결되지 않은 "인트라넷"에 대한 통신, 또는 본 출원에 나중에 기재되는 "네트워크 어드레스 변환기" 또는 NAT를 통해 인터넷에 연결된 폐쇄형 네트워크에 대한 통신을 포함하여, IP 패킷을 사용하여 공통 패킷 교환형 네트워크에 연결된 디바이스의 임의의 수집을 포함할 수 있다. 전자의 경우에 있어서, 인터넷에서 사용된 임의의 IP 어드레스는 독점적이고 유효한 인터넷 어드레스로서 클라이언트에게 등록 및 라이센싱되어야만 한다. 후자의 두 경우에 있어서, IP 어드레스는 그 사용이 의도되었거나 또는 인터넷 어드레스로서 등록되지 않은 격리된 네트워크에서만 의미를 갖는다. 인터넷 상에서 등록되지 않은 IP 어드레스를 사용하려는 시도는 연결 에러로 나타날 것이다.
도 22에 도시된 바와 같이, 모든 IP 패킷은 2개의 요소, 즉 IP 헤더(434) 및 IP 페이로드(435)를 포함한다. IP 헤더(434)는 일반적으로 2개의 잘 설정된 버전 중 하나를 포함하며, 그 중 하나는 "인터넷 프로토콜 버전 4" 또는 IPv4를 위한 것이고, 다른 하나는 "인터넷 프로토콜 버전 6" 또는 IPv6를 위한 것이다. 헤더의 프리앰블(440 또는 444)에 포함된 IP 헤더(434)의 처음 4 비트는 데이터 필드(447)로서 도시된 0100 이 버전 4를 나타내고, 데이터 필드(448)에 의해 도시된 0110 이 버전 6을 나타내는 패킷의 인터넷 버전에 대한 2진 코드를 제공한다. IPv4 가 선택되는 경우에 있어서, 프리앰블(440)은 4B 긴 소스 어드레스(441), 4B 긴 목적지 어드레스(442), 및 8B 긴 옵션 필드(443)에 이어지는, 버전 비트(447)를 포함하는 긴 필드(12B)를 포함한다. IPv6 가 선택되는 경우에, 프리앰블은 16B 긴 소스 어드레스(445), 및 16B 긴 목적지 어드레스(448)에 이어지는, 버전 비트(448)를 포함하는 긴 필드(8B)를 포함한다. IPv4 와는 달리, 버전 6은 옵션 필드를 갖지 않는다.
중요하게도, IPv4 프리앰블(440) 및 IPv6 프리앰블(444)은 길이, 내용, 및 포맷이 다르며, 또한 별도로 고려해야만 한다. 또한, IPv6의 IP 어드레스 필드는, IP 어드레스의 거의 계산할 수 없는 번호, 즉 2128를 독특하게 지정하는 능력을 구비한 길이가 16B 이다. 비교하면, IPv4의 길이는 단지 4B 이며, 단지 232 어드레스를 지정할 수 있다. IPv4의 조합의 개수가 제한되어 있기 때문에, 프리앰블(440)에 지정한 바와 같이, 클라이언트와 네트워크를 식별하기 위해, 다른 정보가 요구된다. IPv6은 이러한 구분을 제공할 필요를 요구하지 않는다. 오늘날 대부분의 현대식 네트워크 및 IP 라우터는 IPv4 및 IPv6을 모두 지원할 수 있다.
인터넷 프로토콜 IPv4 - IPv4 데이터그램(450)의 데이터 패킷 구성에 대해 보다 상세하게 살펴보면, 도 23은 열(by column)으로 좌측에서 우측으로, 그리고 행으로(by row) 위에서 아래로 순차적으로 배열된 시간의 2차원 그래픽 표현을 도시하고 있으며, 특히 각각의 행(row)에 대해 시간은 바이트 또는 옥텟(octet) 0 내지 3(또는 대안적으로 0 내지 31의 비트로 표시됨)으로 도시되고, 또한 위에서부터 아래로 각각의 행은 "0"으로 라벨링된 최상위 행이 "4", "8", "12" 등이 이어지는 오프셋 옥텟으로 라벨링된다. 데이터그램(450)으로부터 순차 데이터를 올바르게 읽기 위해, 패킷은 "0"으로 라벨링된 오프셋 옥텟 행에서 시작하며, 여기서 좌측으로부터 우측으로 프리앰블(451)을 포함하여 송신되거나 또는 수신되는 제1 데이터는 "IHL, DSCP, ECN"이 뒤따르는 전술한 "버전" 필드 및 "전체 길이" 필드를 포함한다. 그 직후에, "식별, 플래그, 프래그먼트 오프셋"으로 라벨링된 필드를 포함하는, 오프셋 옥텟 행 "4"로 라벨링된 다음 행이 판독된다. 마지막으로, 프리앰블(450)에서 "8"로 라벨링된 마지막 행은 "수명시간(TTL: time to live), 프로토콜 및 체크섬" 필드를 포함한다. 프리앰블 다음에, 데이터그램은 4B 소스 IP 어드레스, 4B 목적지 IP 어드레스, 및 오프셋 옥텟 20으로 서 라벨링된 행에서 "옵션" 필드를 포함한다. 데이터그램(450)에서의 마지막 필드는 가변 길이 페이로드 패킷(435)을 포함한다. 이 예가 4B 길이를 나타내지만, 페이로드 길이는 가변적이다.
표(451)는 IPv4 데이터그램 필드에 포함된 정보의 간략한 요약을 제공한다. 이미 언급한 바와 같이, 4 비트 길이(4b) 버전 필드는 버전 4에 대해 인터넷 프로토콜을 2진 0100으로설정한다. IHL 필드는 값이 20B 내지 62B 범위에 속하는, IP 헤더(434)에서 32b 워드의 수, 페이로드(435)를 제외한 IPv4 패킷(450)의 길이를 지정한다. DSCP는 서비스 또는 QoS의 통신 품질을 제어하기 위해 차별화된 서비스를 정의하는 6b 필드를 포함한다. ECN은 네트워크의 로딩 조건을 설명하는 명시적인 혼잡(congestion) 통지 또는 ECN에 대한 4b 필드를 나타낸다. 전체 길이는 20B의 최소 길이 내지 65,535B의 최대 길이의 범위에 속하는, IP 헤더(434) 및 IP 페이로드(435)를 모두 포함하는 IPv4 패킷 데이터그램의 전체 길이를 나타낸다. 최대 패킷 길이는 지정 PHY 매체에 대한 계층 2 데이터 링크 프로토콜에 의해 더 작은 데이터그램으로 제한될 수 있다. 2B 길이의 "식별" 필드는 패킷 분할을 관리하는 데 사용되는 3b "플래그" 및 13b "플래그 오프셋"과 함께 사용되는, 순서를 벗어난 세그먼트로 패킷의 재조립을 가능하게 하는 단일 IP 데이터그램의 분할의 그룹을 독특하게 식별한다. 1B 길이 TTL 또는 "수명시간" 필드는 그 의도된 목적지에 전달될 수는 없지만 그러나 만료되지 않는 영구 패킷을 방지하기 위해, 네트워크에서 데이터그램의 수명을 제한한다. TTL 필드는 전달할 수 없는 것이라고 폐기되기 전에 임의의 지정 패킷이 횡단할 수 있는 라우터의 최대 개수를 지정한다. 패킷이 라우터를 통과 할 때마다, TTL 카운트가 1 카운트씩 감소한다.
1B 길이 "프로토콜" 필드인 필드(460)는 IPv4 패킷의 페이로드(435)에 포함된 데이터의 타입을 설명한다. 어떤 경우에 있어서, 이 데이터는 지정의 명령, 즉 네트워크 상태 또는 전파 지연을 체크하여 계층 3 패킷으로서 실행되는 것을 제공하는 반면에, 다른 경우에서 페이로드는 ICMP, IGMP, TCP, UDP 표준 전송 프로토콜 또는 다른 독점적인 포맷을 포함하여, 패킷 전달 및 확인을 관리하는 데 사용되는 계층 4 전송 프로토콜을 포함하는 것으로서 식별될 수 있다. 본질적으로, 프로토콜 필드는 인터넷 프로토콜에서 OSI 계층 3 과 계층 4를 밀접하게 연결하는, 계층 3 IPv4 패킷에서의 계층 4 데이터그램 설명이다. 헤더 체크섬 필드는 패킷이 잘못된 목적지로 전달되지 않도록 헤더 데이터가 정확한지를 보장하는 데 사용된다. 이는 에러 및 데이터 손실을 탐지하는 데 사용되는 16 비트 체크섬을 포함한다. 총칭하여, 전술한 필드는 IPv4 패킷 프리앰블(440)을 형성한다.
다음 2개의 필드, 소스 IP 어드레스 및 목적지 IP 어드레스는 길이가 4B 이며, 또한 많은 포맷으로 표시될 수 있다. 도트 십진법으로서 지칭되는 전통적인 포맷은 예를 들어, 192.0.2.235 또는 0xC0.0x00.0x02.0xEB 와 같이 점으로 구분된 16진수 포맷으로 각각의 바이트, 즉 옥텟은 0x 이 선행하고, 또한 16진수 형태로 개별적으로 변환되는, 소수점에 의해 분리된 4개의 10진수로 구성된다. 32 비트 어드레스는 도트형 16진수 포맷으로부터 옥텟의 연쇄로서 그 10진수로 3221226219 변환되거나 또는 단일의 16진수 0xC00002EB로 변환될 수도 있다. IPv4 어드레스 포맷의 추가적인 상세는 HTTP ://en.wikipedia.org/wiki/IPv4 또는 다른 유사한 참조를 인용함으로써 얻어질 수 있다. IHL 필드가 6에서 15로 설정되었을 때만 활성화되는 4B 길이 "옵션" 필드는 이것이 생성하는 보안 위험으로 인해 거의 사용되지 않는다.
인터넷 프로토콜 IPv6-IP 어드레스 고갈 때문에, 인터넷 프로토콜 버전 6으로 서 지칭되는 새로운 IP 어드레스 세트가 유발되었다. 도 24에 도시된 바와 같이, IPv6 데이터그램(453)의 데이터 패킷 구성은 그 버전 4 전신과 같이, 헤더가 상당히 더 간단하고 또한 IP 어드레스가 상당히 더 길다는 점을 제외하고는, IP 헤더(434) 및 IP 페이로드(435)의 두 요소를 포함한다. 특히, IPv6 프리앰블(444)은 단지 길이가 8 바이트인 반면에, IPv6 어드레스(445, 446)는 길이가 16 바이트이다.
표(454)는 IPv6 데이터그램 필드에 포함된 정보의 간략한 요약을 제공한다. 이미 언급된 바와 같이, 4 비트 길이(4b) 버전 필드는 버전 6 에 대해 인터넷 프로토콜을 2진법 0110으로설정한다. 1B 길이 "트래픽 등급" 필드는 버전 4와 유사한 ECN 혼합 관리를 위해 차별화된 서비스를 지정하는 6b 서브필드 및 2b를 포함한다. 20b "플로우 라벨" 필드는 실시간 애플리케이션에서 재정렬을 피하기 위해, 데이터 경로를 유지함으로써 단편화를 최소화한다. 2B 길이의 "페이로드 길이"는 페이로드의 길이를 바이트(옥텟)로 지정한다. 필드(460), 1B 길이 "다음 헤더"는 페이로드(435)에서 콘텐트의 타입을 지정한다. IPv4의 "프로토콜" 필드와 마찬가지로, IPv6의 "다음 헤더" 필드는 본질적으로 IP 페이로드(435)의 콘텐트에 관한 정보를 제공한다. 일부 경우에 있어서, 이 콘텐트는 동작, 예를 들어 네트워크 지연을 체크하는 것을 포함하며, 또한 계층 3 데이터를 포함한다. 다른 경우에 있어서, 상기 콘텐트는 ICMP, IGMP, TCP, UDP 표준 전송 프로토콜 또는 기타 다른 독점적인 포맷을 포함하여, 패킷 전달 및 확인을 관리하기 위해 사용되는 계층 4 전송 프로토콜을 포함한다. IPv4 에서의 "TTL(Time-To-Live)"과 마찬가지로, IPv6 패킷의 1B "홉 한계"는 영구적으로 폐기되기 전에 패킷이 횡단할 수 있는 최대 라우터의 개수를 지정한다. 패킷이 라우터를 횡단할 때마다, 카운트는 1씩 감소한다.
이하의 2개의 필드는 각각 16B 길이로 소스 IP 어드레스 445 및 목적지 IP 어드레스(446)를 지정한다. 이미 언급된 바와 같이, 더 긴 IP 어드레스의 목적은 IPv4 에서 발생하는 IP 소모를 극복하는 것이다. 이 문제는 IP 어드레스(469)에 대해 4B 길이 IPv4 어드레스의 3개의 등급을 등급 없는 16B 길이 IPv6 어드레스(458)와 대조시키는 도 25에 도시되어 있다. IPv6 어드레스가 2128 또는 3.403 × 1038 개의 고유한 조합이 가능하기 때문에, 어드레스를 특히 네트워크 및 클라이언트에 지정하여 할당된 등급으로 파괴할 필요가 없다. 이와는 대조적으로, IPv4 에서 유용한 제한된 조합 때문에, 상기 어드레스는 "등급"으로 세분화되었으며, 오늘날 등급(A) 내지 등급(C)은 여전히 공통적으로 사용하고 있다.
도시된 바와 같이, 등급 A는 128개의 네트워크 및 16,777,216(약 224)개의 클라이언트를 지원하기 위해 0.0.0.0 내지 127.255.255.255 범위에 속하는 IPv4 어드레스를 갖는 1B 길이 네트워크 필드(456A) 및 3B 길이 클라이언트 필드(457A)를 포함한다. 등급 A 사용자는 대형 IP 제공업체, 통신 회사, 또는 비디오 제공업체를 포함할 수 있다. 등급 B 어드레스는 16,384(약 214)개의 네트워크와 65,536(대략 216)개의 클라이언트를 지원하기 위해, 128.0.0.0 내지 191.255.255.255 범위에 속하는 IPv4 어드레스를 갖는 456B로 라벨링된 2B 길이 네트워크 필드 및 457B로 라벨링된 2B 길이 클라이언트 필드를 포함한다. 등급 B 사용자는 많은 수의 사이트를 보유한 회사를 포함할 수 있다. 등급 C 어드레스는 2,097,152(대략 221)개의 네트워크 및 256(즉, 28)개의 클라이언트를 지원하기 위해, 192.0.0.0 내지 223.255.255.255 범위에 속하는 IPv4 어드레스를 갖는, 456C로 라벨링된 3B 길이 네트워크 필드 및 457C로 라벨링된 2B 길이 클라이언트 필드를 포함한다. 등급 C 사용자는 전형적으로 소규모 사업체를 포함한다.
네트워크 또는 인터넷을 통한 패킷의 라우팅 동안, IP 헤더(434)에서 각각의 필드의 처리는 인지할 필요에 기초하여 발생한다. 예를 들어, 각각의 라우터는 에러를 체크하기 위해 IP 버전, 패킷 길이, 및 패킷의 체크섬을 알 필요가 있다. 마찬가지로, 홉 시간 또는 TTL 또한 불사를 도태시키기 위해 중간 라우터에 의해 처리될 필요가 있다. 그러나 중간 라우터는 IP 헤더(434)의 모든 필드를 해석할 필요가 없다. 특히 필드(460), IPv4의 "프로토콜" 필드 또는 IPv6의 "다음 헤더"는 송신을 위해서만 그리고 목적지 IP 어드레스에 대해서만 의미가 있다. 중간 라우터는 IP 페이로드(435)의 콘텐트를 인지할 필요가 없으며, 따라서 정보를 처리하지 않는다. 패킷이 그 목적지 IP 어드레스에 최종적으로 도달할 때, 의도된 수신자 디바이스 또는 서버는 어떤 종류의 데이터가 IP 페이로드(435) 내에 캡슐화되었는지를 해석하기 위해 IP 헤더(434)에서 필드(460)의 값을 판독할 것이다. 도 26에 도시된 바와 같이, 필드(460)에서의 임의의 유효 값은 계층 3 네트워크 계층 페이로드 또는 대안적으로 계층 4 전송 계층 페이로드에 관련된 동작으로 나타날 수 있다. 필드(460)에 포함된 코드가 목적지 IP 어드레스에 의해 인식되지 않는 경우, 서버 또는 수신자 디바이스는 패킷을 불완전한 것으로 폐기할 것이다.
필드(460)가 실행 가능한 명령으로서 계층 3 네트워크 계층 페이로드를 포함하는 경우에, IP 페이로드(435)는 수행될 과업을 네트워크에 지시한다. 예를 들어, 필드(460)가 프로토콜 또는 다음 헤더 필드(461 또는 462)로서 도시된 10진수 1 또는 2의 등가물을 포함할 때, IP 페이로드(435)는 네트워크 유틸리티 ICMP 또는 IGMP에 대한 대응하는 명령을 각각 포함할 것이다. 대신에 프로토콜 또는 다음 헤더 필드(463)로서 도시된 10진수 6의 등가물을 포함한다면, IP 페이로드(435)는 TCP 계층 4 전송 프로토콜을 사용하여 페이로드에 대한 데이터(475)를 포함할 것이다. 마찬가지로, 대신에 필드(460)가 프로토콜 또는 다음 헤더 필드(464)로서 도시된 10진수 6의 등가물을 포함한다면, IP 페이로드(435)는 UDP 계층 4 전송 프로토콜을 사용하여 페이로드에 대한 데이터(476)를 포함할 것이다. 계층 4 페이로드는 본 발명의 후속의 섹션에서 논의될 것이다. 다른 덜 일반적이고 독점적인 코드도 존재한다. 필드(460)가 표준화된 등록 코드인 프로토콜 또는 다음 헤더 코드를 포함한다면, 적어도 이론적으로, 공개 네트워크는 코드에 적절히 응답하고 또한 페이로드를 적절히 해석해야 한다. 코드가 독점적인 경우에, 독점적인 네트워크 및 사용자 정의된(customized) 라우터만 코드를 해석하고, 또한 이에 따라 적절한 조치를 취할 수 있다.
필드(460)가 프로토콜 또는 다음 헤더 필드로서 도시된 10진수 1의 등가물을 포함하는 경우에, IP 페이로드(435)는 요청된 서비스가 유효하지 않다는 것을 나타내기 위해 또는 라우터 또는 호스트가 도달될 수 없다는 것을 식별하기 위해, 서버, 라우터, 액세스 포인트, 등과 같은 네트워크 디바이스에 의해 사용되는 ICMP 또는 "인터넷 제어 메시지 프로토콜"로 지칭되는 지정의 네트워크 유틸리티(435)를 액세스 네트워크 전파 지연으로 전송한다. 그 할당된 프로토콜 또는 다음 헤더 식별자, 10진수 1은 어떤 네트워크 진단을 수행하는 경우를 제외하고는, 시스템 또는 최종 사용자 애플리케이션 사이에 정보를 교환하기 위해 ICMP 가 사용되지 않는 UDP 및 TCP 와는 구분된다. 데이터(461)에 대응하는 IP 패킷을 위해 도 26에 도시된 바와 같이, ICMP 패킷은 타입(465), 코드(466), 체크섬(467), 및 ICMP 데이터(469)가 뒤따르는 나머지 ICMP 헤더(468)를 갖는 4 부분 헤더를 포함한다.
"타입"(465) 및 "코드(466)" 필드는 다양한 제어 메시지의 전달을 함께 촉진시킨다. 정교한 타입 = 3 제어 메시지는 IP 목적지가 도달할 수 없음을 의미하며, 여기서 코드는 왜 도달할 수 없는지를 설명하며, 예를 들어 코드 = 0 인 경우 목적지 네트워크는 도달할 수 없고, 코드 = 1 인 경우 목적지 호스트는 도달할 수 없으며, 코드 = 3은 목적지 포트에 도달할 수 없고, 코드 = 9 인 경우 네트워크는 관리 상 금지되어 있다. 타입 = 5 일 때, 패킷은 재지향될 수 있으며, 이에 따라 코드 = 0은 네트워크를 위해 데이터그램을 재지향하는 것을 의미하고, 코드 = 1은 호스트를 위해 데이터그램을 재지향하는 것을 의미한다. 타입 = 0 "에코 응답"에 이어지는 타입 = 8 "에코 요청(echo request)"은 네트워크의 전파 지연을 체크하기 위해 잠수함 수중 음파 탐지기와 유사한, 중요한 그리고 잘 알려진 "ping" 기능을 함께 수행한다. 다른 중요한 기능은 코드 = 30 에 대한 "추적 루트", "도메인 이름 요청" 코드 = 37, 도메인 이름 응답 코드 = 38, 타임 스탬프 요청 코드 = 13, 및 타임 스탬프 응답 코드 = 14를 포함한다. 전달 문제에 대해, 코드 = 11은 전달 "시간이 초과되었음"을 의미하며, 코드 = 12는 "잘못된 IP 헤더"를 의미하며, 코드 = 4 또는 "소스 끄기(source quench)"는 혼잡 제어의 경우에 사용된다. ICMP 데이터(469)의 콘텐트는 메시지를 포함할 수 있거나, 또는 문제가 특별히 큰 페이로드 전달을 괴롭히는지를 조사하기 위해 보다 큰 패킷으로 네트워크를 로딩하기 위해 간단히 사용될 수 있다.
또한, 도 26에 도시된 바와 같이, 필드(460)가 프로토콜 또는 다음 헤더 필드로서 도시된 10진수 2의 등가물을 포함할 때, IP 페이로드(435)는 "인터넷 그룹 관리 프로토콜"의 약자인 IGMP로 지칭되는 지정 네트워크 유틸리티(435)를 운반한다. IPv4 및 IPv6 네트워크의 네트워크 진단에 사용되는 ICMP 와는 달리, IGMP는 게임 또는 온라인 스트리밍과 같은 일 대 다 네트워킹 애플리케이션을 위한 IPv4 멀티캐스팅에만 사용된다. 그러나 IGMPv4 라는 용어는 IGMP의 유산이 이전의 인터넷 화신에서 발전했기 때문에 사용되지 않는다. 대신 IGMPv2 및 IGMPv3은 현재 지원되는 유일한 프로토콜이다. 또한 IPv6 에서, 멀티캐스팅은 멀티 캐스트 청취가 검색을 사용하여 ICMPv6 에 대해 운반되며, 베어(bare) IGMP 캡슐화를 통해서는 직접 수행되지 않는다. IGMP 패킷은 "타입"(470), "MRT"(471), "체크섬"(472), 및 IGMP 데이터(474)에 이어지는 "IGMP 그룹 어드레스"(473)를 포함하는 4 필드 헤더를 포함한다.
IGMP 에 있어서, 타입 470 필드는 "멤버십 질의, 멤버십 보고서 또는 그룹 탈퇴" 명령으로서 패킷의 특성을 설명하며, "MRT" 471 또는 최대 응답 시간은 최대 100 ms 까지 보고서를 수신하기 위해 최대 시간 제한, 체크섬(472), 전체 IGMP 패키지의 16 비트 1 보완을 설정한다. 방송에 대해, IGMPv2는 메시지 "타입"(470)의 설정에 따라 IGMP 패킷 및 그 페이로드 IGMP 데이터(474)를 IGMP 그룹 어드레스(474)에 송신하며, 여기서 "일반 질의"는 모든 호스트에 멀티 캐스트를 송신하고, "그룹 탈퇴"도 마찬가지로 모든 라우터에, 즉 224.0.0.2에 메시지를 송신한다. IGMPv2 에서, 질의되거나 또는 보고된 그룹일 뿐인 "그룹 지정 질의" 및 "회원 보고서"는 성명서에 포함된다. IGMPv3 에서, 보다 포괄적인 멤버십 질의는 모든 연결된 당사자를 정의하는 것이 가능하다.
ICMP 및 IGMP 이외에도, 다른 데이터그램은 독점적인 프로토콜을 포함하며, 여기서 소스 및 목적지 IP 어드레스는 고유한 포맷을 사용하여 통신하도록 정렬되어야만 하며, 그렇지 않으면 IP 페이로드(435)는 일반적으로 TCP 또는 UDP 전송 계층 4 프로토콜을 따르는 데이터를 포함한다.
OSI 계층 4-전송 계층
대응하는 통신 스택(482A, 482B, 482C)을 갖는 컴퓨팅 및 데이터 저장 블록(483A, 483B, 483C)을 포함하는 3개의 네트워크 연결된 디바이스(480A, 480B, 480C)가 공통 네트워크(481)를 공유하는 OSI 전송 계층 4의 기능이 도 27에 도시되어 있다. 상기 전송 계층은 통신(484)이 디바이스(A)의 통신 스택(482A)과 디바이스(B)의 통신 스택(482B) 사이에서만 발생하는 것을 보장한다. 상기 전송 계층의 목적은 2개의 연결된 디바이스 사이의 통신을 제어하고, IP 패킷에 의해 전달된 애플리케이션 데이터 및 수행될 서비스에 대한 상황을 제공하는 것이다. 따라서 본질적으로 OSI 계층 3의 네트워크(481)는 디바이스의 임의의 조합을 연결하며, 또한 OSI 계층 4의 전송 계층은 2개의 지정 디바이스의 통신을 보장한다.
현재 사용되고 있는 2개의 주요 전송 프로토콜은 TCP 및 UDP 이다. "전송 제어 프로토콜" 또는 TCP 에 있어서, 디바이스 사이의 통신 연결은 핸드세이킹의 처리에 의해 보상되어, IP 패킷이 다음 패킷을 송신하기 전에 패킷 교환형 네트워크를 통해 안정적이고 그리고 정확하게 전달되었음을 확인한다. TCP 핸드세이킹을 사용하면, 로컬 영역 네트워크, 인트라넷, 또는 공용 인터넷을 포함하는 "비 연결" 패킷 교환형 통신 시스템에서도 "연결"이 보장될 수 있다. TCP는 일련의 디지탈 바이트의 신뢰성 있는, 에러-체킹된, 적절히 배향된 전달을 보장하지만, 그러나 적시 전달의 보장은 없다. TCP는 이메일, 파일 전송, 웹 브라우저, 원격 터미널 기능, 및 보안 쉘을 포함하는 다양한 컴퓨터 프로그램, 파일, 텍스트, 비디오, 및 음성 통신을 포함하는 시간-무감각형 페이로드를 전달하는 데 사용된다. 시간-감각형 페이로드에 대해, UDP 와 같은 실시간 애플리케이션에 더 적합한 다른 프로토콜이 선호된다.
전송 제어 프로토콜(TCP) - OSI 전송 계층 7 에서 동작하는 TCP는 네트워크 또는 인터넷 계층 3 과 상위 애플리케이션 계층의 중간 레벨에서 기능한다. IP 패킷의 전달 시, TCP는 네트워크 혼잡, 패킷 손실, 트래픽 로드 균형, 및 순서가 잘못된 전달로 인해, 예측할 수 없는 네트워크 동작에 대해 수정할 수 있다. TCP는 이러한 문제 및 기타 문제를 검출하여, 필요에 따라 손실 데이터의 재전송을 요청하며, 순서가 잘못된 데이터를 재배열하며, 또한 심지어 가능한 한 중재적인 네트워크 혼잡을 완화한다. TCP 전송 계층에 의해 전달된 IP 패킷은 TCP/IP 데이터그램으로서 지칭될 수 있다. 패킷 전달 중, 전달 시간을 모니터링하기 위해, 타이머가 사용된다. 패킷이 전달되기 전에 시간이 만료되는 경우, 패키지를 재전송하라는 요청이 이루어진다. TCP 패킷은 IP 패킷의 페이로드 내에 캡슐화된다. 수신된 TCP 패킷은 애플리케이션으로의 전달을 위해 버퍼링 및 재조립된다.
TCP 패킷이 의도된 애플리케이션 또는 서비스를 식별하기 위해, 상기 TCP는 "포트"로서 지칭되는 디지털 식별을 이용한다. 포트는 호스트와 수행된 서비스 모두를 지정함으로써 네트워크에 대해 처리를 고유하게 식별하는 데 사용되는 번호이다. 포트는 웹 서비스(HTTP), 메일 서비스(SMTP), 및 파일 전송(FTP)과 같은 많은 상이한 IP 서비스 및 애플리케이션을 구별하기 위해, TCP 또는 UDP 에 사용된다. 통신 디바이스는, 상위 OSI 애플리케이션 계층 5 이상에서 PHY 계층 1 및 데이터 링크 계층 2를 포함하는 물리적 네트워크의 정보의 교환을 제어하기 위해, 계층 3 IP 어드레스와 계층 4 포트의 조합을 이용한다.
도 28a에 도시된 각각의 TCP 패킷(500)은 TCP 헤더(506) 및 그 TCP 페이로드(507)를 포함한다. TCP 헤더(506)의 기능에 대한 상세한 사항은 도 28b에 도시된 표(508)에 도시되어 있으며, 여기서 TCP 헤더(506)는 "오프셋, 예약, 플래그, 윈도우 크기, 긴급 포인터 및 옵션" 필드뿐만 아니라, 소스 포트(501), 목적지 포트(502), 시컨스 번호(503), 인식 번호(504)를 포함한다. 또한 이는 패킷 무결성을 확인하기 위해 체크섬(505)을 포함한다. 상기 시컨스 번호(503)는 다중 패킷의 순서를 추적하는 데 사용되고, 또한 TCP 헤더(506)의 "플래그" 필드에서 SYN 플래그의 상태에 의존한다. "인정" 필드는 핸드세이킹 프로세스에 사용된다. TCP 헤더(506)의 "플래그" 필드의 ACK 플래그가 2진수 1로 설정되었다면, 인정 필드는 수신기가 기대하고 있는 다음 시컨스 번호이며, 그 후 모든 후속 패킷의 수신을 인정한다.
데이터 "오프셋"은 TCP 헤더(506)의 크기, 즉 5 2B 길이 워드로부터 15 2B 길이 워드 범위에 속하는 2B(32 비트) 워드의 개수로 지정된 바와 같이, TCP 데이터그램(500)의 시작부터 TCP 페이로드(507)의 시작까지의 헤더의 길이를 지정한다. 이때 예약 비트는 사용되지 않는다. 플래그 필드는 부분적으로 은폐, 혼잡, 긴급도, 패킷 인정, 푸시 기능, 연결 리셋, 시컨싱, 및 송신자로부터의 더 이상의 데이터와 관련된 9개의 2진수 플래그를 포함한다. 창 크기는 송신자가 하나의 패킷에서 수신하고자 하는 최대 바이트 수를 지정한다. 체크섬은 TCP 헤더(506)와 TCP 페이로드(507) 모두의 에러 체킹을 위한 2B(16b) 체크섬을 포함한다. URG 플래그가 2진수로 설정되면, "긴급 포인터" 필드는 송신될 마지막 긴급 데이터 바이트를 나타낸다.
TCP/IP를 기반으로 하는 패킷 통신에 있어서, 핸드세이킹은 데이터 무결성을 보장하기 위한 핵심 기능이다. 도 29에 도시된 바와 같이, 시간 t = 0 에서, 노트북(510)은 웹 서버(511)로부터 TCP 헤더(512B)를 포함하는 노트북(510), 및 주기(Δtb)를 요구하는 널(null) 필드(513B)에 인정이 뒤따르는, 주기(Δta)를 함께 요구하는 TCP 헤더(512A), TCP 페이로드(513A) 및 여행 시간(514A)을 송신하는 웹 서버(531)에 TCP/IP 패키지를 송신한다. 조합된 간격 t1 = Δta+Δtb 과 함께 초기 패킷 전달 시간의 대략 2배인, TCP/IP 패킷을 송신하고 확인하기 위한 최소 시간을 나타낸다. 그 후, 다음에만 TCP 헤더(512C) 및 TCP 페이로드(513C)를 포함하는 제2 패킷이 전달될 수 있다. 패킷이 손상되거나 손실되는 경우, 상기 패킷은 재송신 및 확인되어야만 하여, 전달을 위한 주기는 t1으로부터 2t1으로증가한다. 패킷을 "n" 번 이상 재전송해야 한다면, 하나의 패킷을 위한 주기는 nt1을 포함한다. 가변 시간은 비디오 또는 VoIP 처럼 시간 민감형 패킷을 전송할 때 극도로 문제가 되는 TCP 전송을 사용하여 지연된다.
요약하면 TCP/IP 패킷은 다음과 같은 특성을 갖는다.
- 신뢰성-TCP/IP는 인정, 에러 체킹, 재전송 요청, 및 타임 아웃 기능을 관리함으로써 전달을 보장한다.
- 헤비급-TCP/IP는 긴 다중 헤더를 구비한 대형 전송 계층 패킷을 사용하며, 또한 호스트와 클라이언트 사이에 "소켓" 연결을 설정하도록 적어도 3개의 패킷을 요구한다.
- 가변형/느린 속도-핸드세이킹 때문에 TCP/IP의 데이터 전송률은 가변적이고 또한 UDP 보다 상당히 느려서, 비디오 및 VoIP 와 같은 실시간 애플리케이션에는 TCP 가 매력적이지 않다.
- 주문-TCP는 순서를 벗어난 임의의 패킷을 버퍼링하고 재정렬한다.
- 혼잡 제어-TCP는 UDP 에 사용할 수 없는 혼잡을 관리하기 위해 여러 기능을 제공한다.
- 에러 체킹-TCP/IP 패킷은 이들이 수신되면 무결성을 체킹하고, 패킷이 손실되거나 손상된 경우 재전송된다.
사용자 데이터그램 프로토콜(UDP) - TCP 에 대한 대안으로, "사용자 데이터그램 프로토콜" 또는 UDP는 최소한의 프로토콜을 사용하고 패킷 전달의 핸드세이킹 확인이 없는 비연결형 전송 모드를 사용한다. 네트워크의 하부의 불안정성에 민감하며, UDP는 전달 인정을 제안하지 않으며 또한 임의의 패킹 순서 또는 이중화 보호를 제공하지도 않는다. 그러나 데이터 무결성을 확인하기 위해 체크섬을 사용한다. UDP는 시간 민감형 애플리케이션에 가장 적합하며, 또는 에러 체킹 및 수정이 필요없거나 애플리케이션에서 사후에 수행되어, 네트워크 레벨에서 이러한 간접 처리를 피한다.
도 30에 도시된 UDP(529) 패킷은 UDP 헤더(520) 및 UDP 페이로드(524)를 포함한다. 표(525)에 기재된 상기 UDP 헤더(520)는 4개의 필드, 즉 2B 길이 소스 포트 어드레스(521), 2B 길이 목적지 포트 어드레스(521), "길이 " 필드(523), 및 체크섬(523)을 포함한다. UDP 포트 어드레스는 TCP/IP 패킷과 동일한 포맷을 사용한다. UDP 패킷 길이 필드(523)는 IPv6 에서 최소 길이 8B로부터 최대 길이 65,535B 까지의 범위에 있다. 실제적인 고려 사항을 위해, 가장 큰 체크섬 길이는 IPv4 프로토콜에서 미세하게 작은 65,507B로 제한된다.
2B 체크섬(523)은 UDP 헤더(520)로부터의 데이터를 더한 UDP 페이로드(524)의 조합된 길이의 에러 검출에 사용되며, IP 어드레스 및 IP 헤더로부터 빌린 다른 필드를 포함하도록 의사 헤더로 알고리즘으로 수정된다. 상기 의사 헤더는 데이터그램에 명시적으로 존재하지 않지만, 그러나 에러 체킹의 목적을 위해서만 생성되며, 즉, IP 헤더 및 UDP 헤더에서 이용 가능한 데이터로부터 알고리즘으로 합성된다. 상기 의사 헤더 포맷 및 체크섬 값은 IPv4 및 IPv6 기반 UDP 패킷과는 상이하다. 상기 체크섬 기능이 선택 사항인 반면에, 그 사용은 IPv6 에서 필수적이다. 사용하지 않을 때, 필드는 0 디지털 값으로 로딩된다. UDP 헤더(520) 후에, UDP 페이로드(524)는 IPv4 에서 0B 부터 65,507B 범위에 속한 가변 길이를 따른다.
요약하면, UDP 와 TCP/IP 모두는 교환된 패킷 통신 네트워크를 횡단하는 IP 패킷의 계층 4 전송에 사용될 수 있다. 패킷의 특징은 다음과 같다.
- 신뢰할 수 없음-UDP는 전달을 보장하지 않으며, 또한 손실된 패킷을 감지할 수도 없다. UDP는 손실된 패킷을 식별하거나, 재전송을 요청하거나, 전달 중 타임-아웃 조건을 모니터링하기 위한 메커니즘이 없다.
- 경량-UDP는 많은 TCP 특징 및 관련의 패킷 오버헤드가 없는 최소 크기의 헤더를 구비한 작은 전송 계층을 사용한다.
- 고속-그 작은 크기의 아티팩트로서, UDP 패킷은 신속하게 전달될 수 있으며, 또한 손실되거나 손상된 패키지의 전달 또는 재전송의 핸드세이킹 확인을 요구하지 않는다. 데이터 전송률은 최소한으로 TCP의 2배, TCP 패킷의 재전송을 포함하는 경우보다 4배 빠르다. 불안정한 네트워크에서 재전송 요청은 모든 TCP 패킷 전달을 완벽하게 방해할 수 있다.
- 순서가 지정되지 않음-수신된 주문 패키지는 그들이 송신되었던 순서와 동일하지 않다. 애플리케이션은 시컨스 패킷으로부터 재정렬할 정도로 똑똑해야 한다.
- 혼잡 제어 없음-그 작은 패킷 오버헤드의 아티팩트 이외에, UDP는 그러한 혼잡 제어 수단이 애플리케이션 레벨로 실행되지 않는 한, 혼잡을 피하지 않는다.
- 에러 체킹-UDP 패킷은 수신된 경우에만 무결성을 체킹한다. 에러가 있다면, 패킷은 재전송 요청 없이 삭제된다.
계층 4 포트의 사용 - 포트는 패킷 교환형 네트워크 통신에서 전송 계층인 계층 4 실행에 중요한 역할을 한다. 다른 장점 중에서, 포트는 서버 또는 디바이스에 의해 제공되는 애플리케이션이나 서비스를 식별하는 데 도움이 되며, 이들은 다중 사용자가 개별 클라이언트의 통신을 혼용하지 않고 동일한 서버와 상호 작용하는 것을 허용하는 것을 도우며, 이들은 호스트-클라이언트 및 클라이언트-호스트 교환을 위해 상이한 포트 쌍을 사용하여 전이중 통신을 지원하는 수단을 제공하며, 이들은 사용자가 사용할 수 있는 IP 어드레스 수를 늘리고 인터넷으로의 직접 연결에 필요한 연결 수와 비용을 제한하면서 사용자를 위해 유용한 IP 어드레스의 개수를 증가시키기 위해, NAT의 동작 및 네트워크 어드레스 변환기를 촉진시키는 것을 돕는다.
데이터그램의 호스트-클라이언트 교환의 예가 도 31a에 도시되어 있으며, 여기서 태블릿 또는 노트북인 클라이언트의 디바이스(526B)는 호스트(526A)로부터, 전형적으로 웹 서버로부터 웹 페이지를 요청한다. 교환에 있어서, 클라이언트(526B)는 수치 "IP 어드레스 B"를 구비한 IP 어드레스(527B)를 갖는 계층 3 IP 헤더(529)를 포함하는 IP 데이터그램을, 수치 "IP 어드레스 B"를 갖는 IP 어드레스(527A)에서 호스트 서버에 송신한다. 계층 3 데이터그램의 페이로드 내에 캡슐화되어, 클라이언트는 9,999의 홉 값을 갖는 그 자신의 소스 포트 번호(528A)를 포함하는 계층 4 전송 헤더(530)를 송신한다. 포트 요청은 호스트 포트(80)-웹 페이지의 웹 브라우저 다운로드에 사용되는 예약된 HTTP 포트 528A)로 송신된다. 따라서 요청 포트 번호 9,999 가 임의의 방식으로 다음 공개 포트 번호로부터 임의로 할당되더라도, 목적지 포트(80)는 요청된 서비스에 대한 지정 의미를 웹 페이지 요청으로서 갖는다.
계층 3 IP 헤더(529), 계층 4 전송 헤더(530), 및 IP 패킷 페이로드(536)를 포함하는 도 31a의 하단에, 이 웹 페이지 요청에 사용된 IP 데이터그램의 간략화된 버전이 도시되어 있다. 계층 3 IP 헤더(529) 내에, 소스 IP 어드레스(531)는 수치 "IP 어드레스 B"를 가지며, 목적지 IP 어드레스(532)는 값 "IP 어드레스 A"를 갖는다. 계층 4 전송 헤더(530) 내에서, 소스 포트(533)는 포트 # "9,999"의 수치를 가지며, 목적지 포트(534)는 포트 # "80"의 수치를 갖는다. IP 패킷 페이로드(536)는 계층 5 내지 계층 7 애플리케이션 데이터를 포함하는 페이로드(데이터) 필드(535)를 포함하고 있다.
도 31b는 서비스를 위한 클라이언트의 요청에 대한 응답을 도시하고 있다. 도시된 바와 같이, 화살표의 모든 방향은 역전되고, 또한 모든 소스 및 목적지 IP 어드레스 및 포트 #는 이전의 도시에서 바꿨다. 이 교환에 있어서, 계층 3 IP 헤더(537)를 포함하는 IP 데이터그램은 수치 "IP 어드레스 A"를 갖는 소스 IP 어드레스(531)로부터 수치 "IP 어드레스 B"를 갖는 목적지 IP 어드레스(532)로 송신된다. 계층 3 데이터그램 내에 캡슐화되면, 계층 4 전송 헤더(538)는 포트 # "80"의 수치를 갖는 소스 포트(533), 및 포트 # "9,999"의 수치를 갖는 목적지 포트(534)를 포함한다. IP 패킷 페이로드(539) 내에 내장되면, 서비스 요청에 대한 응답은 웹 페이지를 생성하기 위해 HTML 코드를 포함할 수 있는 페이로드(데이터)(536)이다.
따라서 일부 포트 # 가 서버의 선정에서 필요에 따라 개방되고 할당되지만, 다른 포트 번호는 UDP 패킷에서의 사용을 위해, TCP 패킷에서의 사용을 위해, 또는 둘 모두에서의 사용을 위해 예약된다. 공통적인 공식 예약 포트 #의 목록이 도 31c에 도시되어 있으며, TCP 만 사용하는 HTTP 웹 브라우징을 위해 잘 알려진 포트(80), 파일 전송을 위한 포트(20), 포트(23)에서의 텔넷, 포트(110)에서만 TCP를 위한 POP3 이메일, 및 HTTP S, IMAPS, TSL/SSL 과 같은 다양한 보안 버전을 포함한다. 그러나 최근 고유의 전송 계층 보안 방법인 SSL 보안은, 이 애플리케이션의 시작에서 헤드라인 중 하나에 기재된 바와 같이, 어떤 종류의 공격에 취약하다. 계층 4 에코 및 핑 기능에 사용되는 포트 7은, 계층 3 ICMP 기능으로 대체되었다.
도 31d의 표는 포트 # 및 그 사용을 도시하고 있다. 도시된 바와 같이, 예약된 포트 #는 일반적으로 "시스템 포트"로서 포트 # 0 내지 1,023의 범위에서 발생하며, 49,152 이상의 포트 # 에 대해서 포트는 일반적으로 개방되고 자유롭게 이용할 수 있다. 중간 범위에서, 포트 #는 1,024 내지 49,151 에 있으며, 큰 블록이 개방되어 동적 포트 할당에 사용할 수 있지만, 그러나 일부 예약된 포트도 존재한다. 더 일반적으로, 대기업은 그 소프트웨어에서 선택 포트의 그 전용 사용을 보고하고 있지만, 그러나 공식적으로 포트 #을 등록하지는 않는다. 그럼에도 불구하고, "공식" 및 예약된 포트 #는, 엄격하게 적용되는 것은 아니지만, 광범위한 지원을 받는데, 그 이유는 회사는 인터넷 및 다른 비즈니스로 그 시스템 및 소프트웨어의 상호 작용성을 보장하기를 원하기 때문이다.
포트는 또한 "방화벽"을 촉진시켜, 특별한 서비스에 대해 컴퓨터, 서버, 또는 디바이스에 대한 무단 액세스를 방지하거나 또는 적어도 차단하는 데 사용된다. 예를 들어, 인트라넷 상의, 즉 NAT 뒤에 위치되거나 또는 전용의 네트워크 보안 박스에 의해 보호되는 사설 네트워크 상의 서버는 인터넷으로부터 시작된 서비스 요청의 지정한 타입으로 제한될 수 있다. 예를 들어, 방화벽은 포트(80) 요청을 차단하여, HTTP 서비스 요청을 비활성화하며 또한 인터넷으로부터 웹 페이지 다운로드를 방지한다. 대안적으로, 상기 방화벽은 다른 포트가 활성화되지 않은 상태에서, 인터넷으로부터 포트(25) 서비스 요청만 허용하도록 설정될 수 있다. 이러한 경우에 있어서, 상기 방화벽은 인트라넷으로부터 그리고 인터넷으로 그리고 이로부터 이메일을 가능하게 하지만, 다른 모든 타입의 처리를 차단한다. 이러한 엄격한 방화벽 조치의 문제점은, 추가된 보안이 많은 유효한 처리를 차단하여, 현장의 직원 및 공급업체가 그 업무를 수행하는 데 필요한 중요한 정보에 액세스하는 것을 방지한다.
포트의 다른 사용은 IPv4 IP 어드레스에서 포트 고갈에 대한 날짜를 지연시키는 것을 돕는 것이다. 각각의 퍼스널 디바이스에 대해 다중 전용 IP 어드레스를 할당하기보다는, 케이블 제공업자와 같은 인터넷 서비스 공급자 또는 ISP, 공공 WiFi 운영자, 휴대폰 통신업체 등은 개인 IP 어드레스를 사용하여 동적으로 재활용하고 또한 그 인터넷 게이트웨이와 개인 클라이언트 사이에서 통신하기 위해 개인 IP 어드레스를 사용할 수 있다. 이러한 방식으로, 단일 인터넷 IP 어드레스는 등급 B 서브넷(subnet)에 대해 65,534명 까지의 사용자를 제공할 수 있으며, 또는 등급 C 서브넷에 대해 254명의 사용자를 지원할 수 있어, 업스트림 연결 대역폭이 트래픽을 지원할만큼 충분히 빠르다.
이 하나의 IP 어드레스(one-IP-address) 대 다 IP 어드레스(many-IP-address) 양방향 변환 및 통신을 수행하는 디바이스는, "네트워크 어드레스 변환기" 또는 NAT로 지칭된다. 도 32a에 도시된 바와 같이, NAT(550)는 IP 어드레스 및 포트 # 변환 블록(554), 및 인터넷 연결된 통신 스택(553A) 및 등급 C 서브넷 통신 스택(553B)을 포함하는 2개의 통신 스택을 포함한다. 인터넷 연결된 통신 스택(553A)은 공용 네트워크(531)를 통해 서버(22A), 라우터(27), 및 웹 서버(511)와 같은 다른 모든 인터넷 연결 디바이스에 연결된다. 전송 계층 4 에서, 통신 스택(553A)은 557A 및 557B 와 같은 다중 디바이스와의 동시 통신을 관리한다. 도시된 예에 있어서, 비-공용 네트워크(552)는 노트북(35), 냉장고(34), 데스크탑(35), 및 가정용 WiFi 라우터(62A)와 같은 다양한 가정용 디바이스를, 등급 C 서브넷 통신 스택(553B)에 연결한다. 사설 네트워크에서, 계층 4 전송 프로토콜은 통신 스택(553B)과 네트워크 연결된 디바이스, 예를 들어, 계층 4 연결(556A, 556B) 사이에서의 통신을 관리한다. 사설 네트워크와 공용 네트워크 사이의 정보 교환을 지원함에 있어서, IP 어드레스 및 포트 변환 블록(554)은 애드혹(ad hoc) 변환 표(555)를 동적으로 구성하여, 각각의 사설 네트워크 패킷 송신을 공용 네트워크로 또는 그 반대로 맵핑한다.
NAT의 동작이 도 32b에 도시되어 있으며, 여기서 "NAT 뒤의" 사설 네트워크에 연결된 데스크탑(36) 및 노트북(35)은 단 하나의 인터넷 연결된 공용 IP 어드레스만을 통해 인터넷 연결된 웹 서버(21A) 및 이메일 서버(27)와 동시에 통신을 시도한다. 도시된 예에 있어서, 노트북(35)은 여기서는 "NB"로 표시된 IP 어드레스 및 동적 포트 할당을 가지며, 데스크탑(36)은 "DT"로 표시된 어드레스 및 동적 포트 할당을 가지며, 웹 서버(21A)는 여기서 "S1"으로 표시된 IP 어드레스를 가지며 또한 HTTP 기반 웹 페이지 서비스를 위해 포트(80)를 사용하며, 이메일 서버(27)는 여기서 "S2 "로 지정된 IP 어드레스를 가지고 또한 IMAP 기반 이메일 서비스를 위해 포트(110)를 사용한다. 인터넷 상에서 NAT 550은 공용 IP 어드레스 "N"을 가지며, 또한 동적 포트 할당을 사용한다.
동작 시, 노트북(35)은 IP 패킷(560A)에 의해 목적지 IP 어드레스 S1 및 포트 # 80에서 소스 IP 어드레스 "NB" 및 임의의 포트 # 9999로부터 웹 서버(21A)로의 웹 페이지 요청을 시작한다. 동시에, 데스크탑(36)은 목적지 IP 어드레스 S2 및 포트 # 110 에서 소스 IP 어드레스 IP 패킷(561A)에 의해 "DT" 및 임의의 포트 # 10200으로부터 이메일 서버(27)로 이메일 요청을 시작한다. 이들 요청의 수신에 따라, NAT(550)는 들어오는 메시지를 발신 인터넷 연결로 맵핑하여, 변환 표(555)에서 어드레스 변환을 맵핑한다. 그 후, NAT는 인터넷 IP 패킷(560B)을 생성하기 위해, 목적지 IP 어드레스 S1 및 포트 번호 9999를 유지하지만 그러나 변환된 소스 IP 어드레스 "N" 및 소스 포트 # "5"로 노트북(35)으로부터 NAT(550)으로 소스 정보를 스와핑함으로써, 노트북(35)으로부터 요청을 포워딩한다.
유사한 방식으로, NAT(550)는 인터넷 IP 패킷(561B)을 생성하기 위해, 목적지 IP 어드레스 S2 및 포트 번호 9999를 유지하지만 그러나 변환된 소스 IP 어드레스 "N" 및 소스 포트 # 20400로 테스크탑(36)으로부터 NAT(550)로 소스 정보를 스와핑함으로써, 데스크탑(36)으로부터 이메일 서버(27)로 요청을 변환한다. 이러한 방식으로, 웹 서버(21A)와 이메일 서버(27) 모두는 그들이 NAT(550)와 통신하고 있다고 생각하며, 그리고 노트북(35) 및 데스크탑(36)으로부터 오는 임의의 요청에 대해 전혀 생각하지 못한다. 사실, NAT 서브넷 상에 연결된 어드레스 "NB" 또는 "DT"와 같은 디바이스에 의해 사용된 IP 어드레스는 인터넷 상에서 유효한 어드레스가 아니며, 또한 NAT 550의 개입 없이 직접 연결될 수는 없다.
일단 웹 서버(21A)가 요청 IP 패킷(560B)을 수신하였다면, 이는 소스 IP 어드레스 "S1" 및 포트 "80"으로부터 목적지 IP 어드레스 "N" 및 포트 # 20000으로IP 패킷(560C)에 의해 라우팅된 웹 페이지를 구성하기 위해 HTML 코드를 송신함으로써 응답한다. 변환 표(555)를 참조함으로써, NAT는 응답 IP 패킷(560D)을 생성하기 위해 포트 # 20000 에 대한 응답이 노트북(35)으로부터의 요청에 대응하고, 또한 그 목적이 IP 어드레스 및 포트 #를 노트북으로, 즉 IP 어드레스 "NB" 및 포트 # 9999로 스와핑함으로써 상기 메시지를 포워딩한다.
이 처리와 병행하여, NAT(550)로부터 IP 패킷(560B) 요청의 수신에 따라, 이메일 서버(27)는 IP 패키지(561C)에 의해 라우팅된 이메일을 포함하는 송신 IMAP 코드를, 소스 IP 어드레스 "S2" 및 포트 # 110으로부터 목적지 IP 어드레스 "N" 및 포트 # 20400로의 송신에 응답한다. 변환 표(555)를 참조하면, NAT는 포트 # 20400 에 대한 응답이 데스크탑(36)으로부터의 요청에 대응한다는 것을 알고, 응답 IP 패킷(561D)을 생성하기 위해 그 목적지 IP 어드레스 및 포트 번호를 데스크탑으로, 즉 IP 어드레스 "DT" 및 포트 # 10200로 스와핑함으로써 상기 메시지를 포워딩한다. 이러한 방식으로, 다중 사용자는 단일 IP 어드레스를 통해 다중 인터넷 연결 디바이스 및 사이트를 별도로 지정할 수 있다.
다른 계층 4 전송 프로토콜 - TCP 및 UDP는 제외하고, 이들이 TCP 및 UDP의 계층 4 슈퍼 세트로서 동작한다면, 또는 이들이 단순히 UDP 및 TCP의 상단에서 실행되는 상위 계층 애플리케이션이라면, 다른 공통 전송 프로토콜이 독특하고 독립적인 계층 4 프로토콜로서 동작하는지의 여부에 대한 합의가 일반적으로 부족하다.
이러한 프로토콜 중 하나인 "데이터그램 혼잡 제어 프로토콜" 또는 DCCP는 스트리밍 미디어 및 멀티플레이어 온라인 게임과 같은 데이터의 전달에 타이밍 제약이 있는 애플리케이션에 유용한 혼잡 제어를 관리하기 위한 메시지-지향 전송 계층 프로토콜이지만, 그러나 TCP에서 사용 가능한 순서를 벗어난 패킷에 대한 처리가 결여되어 있다. 이는 자립적인 기반 상에서 사용될 수 있지만, DCCP의 다른 애플리케이션은 UDP 기반 애플리케이션에 대한 혼잡 제어 기능을 제공하는 것이다. 데이터 트래픽을 운반함과 함께, DCCP는 송신자에게 패킷이 도착했을 때를 알려주고 또한 이들이 송신자에게 알리는 확인 트래픽과 "명시적 혼잡 통지" 또는 ECN 에 의해 태그되었는지의 여부를 알려주는 지식을 포함한다.
패킷, 특히 텍스트의 시기적절한 전달을 관리하기 위한 다른 시도는, UDP의 멀티 캐스트 옵션에 기초한 LCM 또는 "경량 통신 및 마샬링(marshaling)"이다. UDP 유니 캐스트와는 달리, UDP 멀티 캐스트의 하나의 이점은 다중 애플리케이션이 단일 호스트 상에서 일관되게 행동하거나 또는 다중 플랫폼을 통해 분산된다는 점이다. 네트워크 대기 시간을 최소화하는 것 외에도, 다른 계층 4 프로토콜은 데이터를 "터널링(tunneling)"하여, 인터넷 상에서 이를 통해 동작하는 가상 사설 네트워크 또는 VPN을 생성하는 데 사용된다. 이러한 UDP 기반 프로토콜 중 하나는 일반적인 라우팅 캡슐화 또는 GRE, 점 대 점 터널링 프로토콜 또는 PPTP, 보안 소켓 터널링 메커니즘 또는 SSTM, 보안 쉘 또는 SSH, 등이다. 그러나 보안을 개선하는 일부 VPN 실행은 실제로 네트워크 대기 시간을 증가시킨다.
UDP 및 TCP의 전술한 표준화된 계층 4 전송 프로토콜 외에도, 독점적인 프로토콜의 채택률과 IP 패킷 오염 시 낮은 대기 시간을 손상을 희생하여 낮은 대기 시간을 보장하는 데 있어 어떤 상충 관계가 있는지, 또는 증가 된 비용으로 보안을 보장하는지는 분명하지 않다.
OSI 계층 5, 6, 및 7 - 애플리케이션 계층
포트 # 가 요청된 서비스의 타입을 식별할 동안, 애플리케이션은 계층 4 페이로드로서 캡슐화된 데이터의 성격을 이해해야만 한다. 전달된 패키지의 콘텐트에 기초하여 조치를 취하는 것은, 상위 OSI 애플리케이션 계층 인 계층 5, 6, 및 7의 역할이다. 애플리케이션 계층에서 다중 디바이스의 상호 연결이 도 33의 블록 다이어그램에 그래픽으로 도시되어 있으며, 여기서 별도의 컴퓨팅 및 데이터 저장 능력(573A, 573B, 573C)을 구비한 3개의 디바이스(570A, 570B, 570C) 각각은 애플리케이션 계층 연결성(571)을 공유하는 대응의 통신 스택(572A, 572B, 572C)에 의해 연결된다. 실제로, 디바이스는 모든 OSI 계층에서 연결을 포함하지만, 그러나 간단함을 위해 애플리케이션 계층 연결만 도시된다.
패킷 교환형 네트워크에 연결하는 것 외에도, 디바이스가 애플리케이션 계층에서 통신을 설정하는 주요한 규칙은 모든 통신 디바이스에 동일한 또는 호환 가능한 애플리케이션이 있어야만 한다는 점이다. 예를 들어, 뱅킹 프로그램은 비디오 게임 프로그램을 이해할 수 없으며, CAD 프로그램은 HD 비디오 스트리밍을 해석할 수 없고, 뮤직 플레이너는 주식 시장 거래를 수행할 수 없다. 많은 애플리케이션 프로그램이 하나의 회사 또는 공급업체에 사용자 지정이거나 또는 독점적인 반면에, 여러 애플리케이션 및 서비스는 유비쿼터스이며, 일부 경우에는 정부는 오픈 소스 환경으로 운영하도록 지도한다. 예를 들어 마이크로소프트가 마이크로소프트 윈도우즈에 명시적으로 그리고 독점적으로 그 아웃룩 메일 서버에 링크하고자 할 때, 유럽 연합(EU)의 법원에서 이런 행동은 반독점법을 위반했다고 판결했고, 마이크로소프트는 그 메일 애플리케이션을 잘 정의된 연결로 이것이 동작하는 동작 환경에 표준 프로그램으로서 방출할 것을 강제했다. 그 즉시, 마이크로소프트의 메일 프로토콜 및 기능을 사용하여 다수의 경쟁 플랫폼 상에 많은 경쟁 메일 프로그램이 등장했다.
애플리케이션 계층 5, 6, 및 7의 구분은 미묘하다. 결과적으로, 많은 사람들이 7 계층 OSI 모델에서 "애플리케이션 계층", "상위 계층"으로서 또는 심지어 계층 7 과 같이 계층을 참조한다. 후자의 해석에 있어서, 계층 7은 진정한 애플리케이션으로 간주되고, 계층 5 및 6은 컴퓨터 프로그램에서 서브루틴 호출과 유사하게 이를 서비스하는 데 사용되는 계층으로서 간주된다. 심지어 문제를 더욱 혼란스럽게 하기 위해, 7 계층 OSI 모델과 경쟁하는 패킷 교환형 네트워크의 대안적인 5개 계층 설명이 모든 3개의 애플리케이션 계층을 계층 5로서 지칭되는 하나의 계층으로 병합한다.
세션 계층 5 - 7 계층 OSI 모델에 있어서, 계층 5는 "세션 계층"이라고 불리며, TCP 세션의 체크포인팅, 복구, 및 기품 있는 TCP 세션의 종료를 제공할 뿐만 아니라, 전이중, 반이중, 또는 단일의 통신 관리를 포함하여, 애플리케이션 사이의 대화를 조정한다. 또한, 이는 "원격 처리 호출" 또는 RPC를 사용하는 애플리케이션 환경에서 원격 애플리케이션을 위한 연결을 명시적으로 설정하고, 관리하고, 종료한다. 또한, 계층 5는 하나의 애플리케이션이 다른 애플리케이션의 처리에 액세스할 것을 요청할 때, 예를 들어 액셀로부터 파워포인트로 차트를 가져올 때, 교차-애플리케이션 세션 관리를 취급한다. 다른 계층 5 애플리케이션 인 "소켓 보안" 또는 SOCKS는, "인증"을 수행하여 서버 액세스를 인증된 사용자에게만 제한하기 위해, 프록시 서버를 통해 서버와 클라이언트 사이에 IP 패킷을 라우팅하는 데 사용되는 인터넷 프로토콜이다. 따라서 액세스 및 권한을 부여하거나 거부하기 위해 사용자 ID 에 의존함에 따라, SOCKS 보안은 사용된 인증 프로세스만큼 견고하다.
동작 시, SOCKS는 프록시로서 동작하여, 임의의 IP 어드레스를 통해 TCP 연결을 라우팅하고 또한 UDP 패킷을 위한 전달 서비스를 포워딩한다. 클라이언트가 방화벽에 의해 서버로부터 차단된 경우, SOCKS를 사용하여 클라이언트는 SOCKS 프록시에 접촉하고, 클라이언트 네트워크는 클라이언트가 서버에 접촉하기를 원하는 연결을 요청한다. 일단 서버에 의해 승인되었다면, SOCKS 프록시는 방화벽을 통해 연결을 열고, 방화벽이 존재하지 않을지라도 서버와 클라이언트 사이의 통신을 촉진시킨다. HTTP 기반 프록시보다 낮은 계층에서의 동작 시, SOCKS는 패킷 헤더를 해석하거나 재기입하지 않고 클라이언트가 이루고자 하는 연결에 대한 프록시 소프트웨어를 알리기 위해, 핸드세이킹 방법을 사용한다. 일단 연결이 이루어졌다면, SOCKS는 네트워크 사용자에게 투명하게 동작한다. SOCKS4로서 지칭되는 더 새로운 버전의 SOCKS는 소프트웨어를 향상시키므로, 클라이언트는 IP 어드레스를 요구하기보다는 목적지 도메인 이름을 지정할 수 있다.
인증된 사용자를 식별하는 데 사용되는 인증 프로세스보다 강력하지 않으므로, SOCKS는 해커 및 범죄자에 의해 방화벽 보안 수단을 무력화시키는 수단으로 변환될 수 있다. 이러한 노출을 방지하기 위해, SOCKS 5는 DNS 조회를 사용하여 UDP 포워딩을 위한 지원을 추가할 뿐만 아니라, 인증을 위해 더 많은 수의 선택을 제공하도록 개발되었다. SOCKS5는 IPv4 와 IPv6 IP 어드레스 모두를 지원하도록 업데이트되었다. 핸드세이킹 및 세션 협상 중, 클라이언트와 서버 모두는 인증에 사용할 수 있는 방법을 번호 별로 식별한다.
- 0x00: 인증 없음
- 0x01: GSSAPI 방법
- 0x02: 사용자 이름/암호
- 0x03-0x7F: IANA 할당된 방법
- 0x80-0xFE: 개인 사용을 위해 예약된 방법
협상이 완료되고 인증 방법이 선택되면, 통신이 시작될 수 있다. 가장 간단한 인증 절차 사용자 이름/암호는, 특히 4개의 문자 PIN 타입 패스워드에서 본질적으로 안전하지 않고 또한 쉽게 파괴되는 것으로 밝혀졌다. 대안으로서, "일반 보안 서비스 애플리케이션 인터페이스" 또는 GSSAPI 자체는 보안 방법이 아니라 주로 보안 서비스 공급자에 의해 작성된 보안 코드 및 인증 방법을 포함하는 소프트웨어 라이브러리 상에서 호출하는 IETF 표준화된 인터페이스이다. GSSAPI를 사용하여, 사용자는 임의의 애플리케이션 코드를 재작성할 필요없이 이런 보안 방법을 변경할 수 있다. 처리 호출은 사용자의 신원 증명 또는 비밀 암호 키를 얻는 단계, 서버에 송신하고 응답 토큰을 수신하기 위해 클라이언트 토큰 또는 도전을 생성하는 단계, 애플리케이션 데이터를 보안 또는 암호화된 메시지 토큰으로 변환하는 단계, 및 이를 복원하는 단계를 포함한다. 대안적으로, 비 영리 ICANN의 한 부선(division)인 "인터넷 할당 번호 기관" 또는 ICANN은 네트워크 안정성과 보안을 보장하기 위해 그 헌장 하에 어떤 방법을 지정했다.
프리젠테이션 계층 6 - 계층 6은 문자 코딩, 오디오, 비디오, 및 그래픽 포맷에 대한 동의 유지를 포함하는 데이터 및 개체의 구문 표현을 관리한다. 본질적으로, 때로는 구문 계층이라고 지칭되는 프레젠테이션 계층은 파일 및 매립된 개체를, 주어진 애플리케이션에서 사용할 수 있는 형태로 준비하거나 변환하고, 또한 상기 데이터를 애플리케이션 계층 7 에 "표시"한다. 예를 들어, 그래픽 개체가 주어진 애플리케이션, 프레젠테이션 계층 소프트웨어에 의해 이해할 수 없는 포맷으로 수신되었다면, 포맷은 가능할 때마다 주어진 애플리케이션에 대해 허용 가능한 형식을 변환하거나 변화시킨다. 반대로, 계층 6은 독점적인 포맷된 개체를 표준 포맷으로 변환하고 그리고 이들을 세션 계층 5로 다운 통과시키기 전에 이들을 캡슐화할 수 있다. 이러한 방식으로, 계층 6은 통신 및 프로토콜 스택의 위아래로 데이터를 이동시키기 위해 상이한 애플리케이션 사이에 구문 문맥을 설정한다. 예를 들어, 어도브 일러스트레이터 또는 오토캐드에서 만든 그래픽은 파워포인트 프레젠테이션이나 또는 HTTP 기반 이메일 문서에 들여오고 매립될 수 있다.
또한, 계층 6은 암호화, 즉 네트워크를 통해 송신하기 전에 데이터를 포맷하고 그리고 암호화하고, 반대로 이를 애플리케이션 계층에 제시하기 전에 데이터를 해독하고 이를 재포맷하는 등의 동작을 담당한다. 예를 들어, 인터넷에 대해 암호화된 포맷으로 송신된 탭-표시형 데이터 파일의 수신에 따라, 일단 이것이 협의된 해독 키에 따라 파일을 암호화하였다면, 계층 6은 상기 실행을 위해 행렬 기반 스프레드 시트, 예를 들어 액셀 또는 오라클과 같은 관계형 데이터베이스 내로 상기 데이터를 재포맷할 수 있다. 보안을 강화하기 위해, 계층 6 에 의한 암호화 및 해독은 계층 5 인증 처리를 통해 그 신원이 선험적으로 확인 된 인증된 송신자 및 수신자로 제한될 수 있다. 이러한 코뮤니케(communique)의 보안은 데이터 파일에 액세스할 수 있는 사용자의 권리를 확인하는 데 사용되는 인증 프로세스와 데이터 파일을 모호하게 하는 데 사용되는 암호화보다 낮지 않다.
프리젠테이션 계층 소프트웨어가 지정 디바이스 또는 운영 체제에 대한 완전한 사용자 지정 기반으로 개발될 수 있는 반면에, 전송 능력 및 상호 동작성을 위해 코드는 EBCDIC 코드형 텍스트 파일을 ASCII 코드형 파일로 변환하거나 또는 개체 및 기타 데이터 구조를 XML과 직렬화하는 것과 같은 능력을 포함하여, "추상 구문 표기법, 버전 1" 또는 ASN.1의 기본 인코딩 규칙을 사용함으로써 구성될 수 있다. 계층 5 프리젠테이션 프로토콜, ASN.1은 구성된 데이터를 지정 인코딩 규칙으로 맵핑하며, 예를 들어 정수를 전송될 비트 스트링으로 변환하고 또한 마찬가지로 XER로 알려진 "XML 인코딩 규칙"을 사용하여 비트 스트링을 디코딩한다. 계층 6 동작에 의해 커버된 다양한 포맷은 이하를 포함한다.
- ASCII 및 EBCDIC 포맷을 포함하는 텍스트
- PNG, JPG, GIF, BMP, EPS를 포함하는 그래픽
- MP4, WMV, MOV, AVI, MIDI를 포함하는 사운드 및 비디오
- PDF, DOC, PPT, HTML, XML, MIME, 압축(예를 들어, ZIP)을 포함하는 문서
- RTP, RTSP, RTMP를 포함하는 스트리밍
- TLS/SSL, SSH를 포함하는 암호화
애플리케이션 계층 7 - 7 계층 OSI 모델에 있어서, 계층 7, "애플리케이션"계층은 사용자, 클라이언트, 호스트를 구비한 디바이스, 서버, 또는 시스템 사이에 인터페이스를 촉진시킨다. 상기 애플리케이션 계층이 사용자에게 가장 가까이 있기 때문에, 이는 사용자와 호스트 사이의 인터페이스를 촉진시킨다. 사용자가 사람이고 호스트가 휴대폰 또는 컴퓨터와 같은 전자 디바이스인 경우, 이 인터페이스는 키보드 두드림, 접촉, 또는 키보드나 터치스크린을 사용하거나 때로는 음성을 통한 제스처를 통해 촉진된다. GUI 또는 그래픽 사용자 인터페이스라고 불리는 터치스크린 인터페이스는, 인간-기계 상호 작용 연구에 기초하여 사용자 인터페이스/사용자 경험, 인터페이스 디자인을 의미하는 UI/UX 라는 용어에 주로 사용되었다. 기계 대 기계 또는 M2M 및 기계 대 기반 시설 또는 M2X 에 있어서, 휴먼 인터페이스는 상이한 기계 언어를 사용하는 유사하지 않은 하드웨어 디바이스에 의해 대체된다.
이러한 차이와는 관계없이, 애플리케이션 계층은 사람과 기계 또는 다중 기계가 여러 시스템이 서로 인식 가능한 형태로 이야기하는 것을 허용해야만 한다. OSI 모델이 통신 및 프로토콜 스택을 취급하기 때문에, 이들 인터페이스는 OSI 모델의 범위를 벗어나지만, 그러나 통신 파트너 식별, 리소스 가용성 결정, 및 통신 동기화를 포함하여, 대화를 협상할 때 여전히 중요한 역할을 한다. 통신 파트너를 식별할 때, 계층 7은 다른 당사자가 올바른 소프트웨어를 설치했는지, 통신이 허용되는지, 올바른 자격 증명을 가지고 있는지를, 결정해야만 한다.
일부 경우에 있어서, 이는 임의의 데이터 교환을 시작하기 전에 다른 당사자의 신원을 먼저 인증하기 위해 레벨 5를 요구할 수 있다. 이 확인은 정보 교환 요청 시 수행될 수 있거나, 또는 본딩 과정을 통해 또는 AAA 유효성을 사용하여 인증, 권한 부여, 및 관리를 의미하는 3단계 절차인 검사를 사용하여 선험적으로 협상될 수 있다. VoIP를 사용하는 휴대폰과 같은 통신 애플리케이션에 있어서, 애플리케이션 소프트웨어는 네트워크가 사용할 수 있고 또한 호출을 위치시키기에, 즉, 허용 가능한 QoS 레벨로 대화를 지원할 수 있도록 허용 가능하게 작은 대기 시간으로 송신되고 수신된 IP 패킷의 시컨스를 설정하기에, 충분히 안정적인지를 확인하도록 테스트해야만 한다. 통신 동기화에 있어서, 애플리케이션들 사이의 모든 통신은 애플리케이션 계층에 의해 관리하는 협력을 요구한다.
애플리케이션 계층 실행의 일부 예는 터미널 에뮬레이션, 이메일 서비스, 네트워크 관리, 웹 브라우저, 파일 관리, 백업 및 클라우드 저장 서비스, 주변 드라이버를 포함한다.
- FTP, FTAM, SFTP, NNTP, IRC, SIP, ZIP을 포함하는 파일 관리
- HTTP를 포함한 웹 브라우저(예를 들어, 사파리, 파이어폭스, 크롬, 아웃룩, 넷스케이프 등)
- 마이크로소프트 아웃룩, 애플 메일, 구글 G 메일, 야후, 핫메일 등과 함께 SMTP, IMAP, POP3를 포함하는 이메일 서비스
- SIP, NNTP, IRC 및 "오버 더 탑" 또는 OTT 커스텀 실행을 포함하는 통신 및 방송 서비스
- DNS, SNMP, DHCP, SNMP, BGP, LDAP, CMIP를 포함하는 네트워크 관리
- 텔넷을 포함하는 터미널 에뮬레이션
- NFS 및 상용 버전인 안드로이드, iOS, 애플 타임 머신, 애플 아이클라우드, 카보나이트(Carbonite), 바라쿠다(Barracuda), 드롭박스, 구글 드라이브, 마이크로소프트 원 드라이브(Microsoft One Drive), 박스(Box)를 포함하는 백업 및 클라우드 저장 서비스
- 프린터, 스캐너, 카메라, 플래시 카드를 포함하는 주변 드라이버
- 시만텍, 노턴, AVG 와 같은 보안 애플리케이션
컴퓨터 및 스마트폰 애플리케이션에 대해, 밑줄이 그려진 가장 일반적인 애플리케이션은 파일 전송, 웹 브라우징을 위한 하이퍼텍스트 전송, 이메일 서비스 및 도메인 이름을 IP 어드레스로 변환하기 위한 DNS 조회를 포함한다. 편재성 때문에 이러한 일반 애플리케이션에는 이러한 서비스에 할당된 전용 포트가 있다.
파일 관리 애플리케이션 - 파일을 송신하거나 또는 데이터를 다운로딩하는 데 사용되는 하나의 공통 레벨 7 애플리케이션, 파일 전송 프로그램 또는 FTP. 일단 다운로딩된 파일은 차후 사용을 위해 비휘발성 저장 드라이브 내에 "기입"된다. 파일이 실행 가능한 코드를 포함한다면, 디바이스의 운영 체제와 함께 다운로드 및 설치 프로그램이 개방하여, 컴퓨터나 모바일 디바이스 상의 애플리케이션 디렉토리 내에 소프트웨어를 설치한다.
이 프로세스가 도 34에 도시되어 있으며, 여기서 숫자 IP 어드레스 "NB" 및 동적 포트 할당을 갖는 노트북(35)은 TCP 전송을 사용하여 FTP 요청으로서 IP 패킷(580)을 포트 # 21 에 전송함으로써 파일 서버(21A)로부터 파일을 요청하며, 상기 FTP는 파일 서버의 포트를 제어한다. 결과적인 IP 패킷(580)은 그 소스 IP 어드레스 "NB"와 함께 목적지 IP 어드레스 "S1", 목적지 포트 # 21, 그 애드혹 포트 # 9999를 포함한다. 포트 # 21 이 파일 전송 서비스를 요청하기 위한 제어 포트를 표시하기 때문에, 파일 서버(21A)는 노트북(35)이 파일을 요구하고 있음을 알고, 또한 로그인 정보가 패킷의 목적지 IP 어드레스 및 포트 번호를 확인하기를 기대한다.
활성 FTP 세션에 있어서, 그 후 노트북(35)은 SWIFT 코드 및 계좌 번호를 포함하는 은행 전신 송금(bank wire transfer)을 위한 배선 명령을 제공하는 바와 유사한, 요청된 파일에 대한 목적지 어드레스 및 목적지 포트 #를 송신한다. 결과적인 IP 패킷(581)은 소스 정보로서 노트북의 IP 어드레스 "NB" 및 포트 # 9999를 포함하며, 또한 목적지로서 서버의 IP 어드레스 "S1"을 포함한다. 패킷의 목적지 포트 #는 명령 연결과 별도로 FTP 데이터 채널을 협상하기 위해 포트 # 20으로변경된다.
응답 시, 파일 서버(21A)는 그 후 파일 이름 및 선택적으로 요청된 파일 경로를 결정하기 위해 IP 패킷의 페이로드를 개방하고, 파일(583)을 찾은 후, 이를 응답하는 IP 패킷(582) 내로 캡슐화하고, IP 어드레스와 포트를 스와핑함으로써 상기 패킷을 데이터를 통해 노트북(35)으로 다시 송신하며, 즉 상기 목적지는 IP 어드레스 "NB"로 되고, 소스는 IP 어드레스 "S1" 및 포트(20)로 된다. 이전의 두 처리와 마찬가지로, IP 패킷은 TCP를 그 전송 메커니즘으로서 사용한다.
일단 노트북(35)이 파일을 수신하였다면, 이는 패킷(582)의 페이로드로부터 추출되며, 가능하기로는 저장을 위해 또는 노트북의 운영 체제(585) 내로 업로드하기 위해 프리젠테이션 계층 6을 사용하여 데이터 파일(583)로 변환된다. 만일 그렇다면, 프로그램 또는 다른 프로그램, 운영 체제에서의 유틸리티는 애플리케이션 프로그램(586)을 생성하기 위해 파일(583)의 실행 가능한 코드를 업로드한다.
활성 FTP 파일 전송의 본래의 실행에는 2가지 문제가 있다. 첫째, FTP 명령 포트 # 21 이 공개 표준이기 때문에, 해커는 신원을 위조하여 무단 파일을 다운로드하기 위해, 또는 그렇지 않다면 디바이스를 동작하지 못하게 하는 서비스 공격의 거부를 유발시키기 위해, 이를 자주 사용한다. 활성 FTP 전송과 관련된 다른 문제는 파일 서버로부터 전송된 IP 패킷(582)이 NAT 또는 방화벽에 의해 차단되어 노트북(35)으로의 그 전달을 차단할 수 있다는 점이다. 수동 FTP로 지칭되는 이 절차의 변형은 방화벽 문제를 우회할 수 있지만, 그러나 이제는 대부분 NAT 라우터는 FTP를 인식하고 또한 적절한 자격 증명 또는 인증으로 파일 전송을 지원한다.
포트 # 20 상에서 사용할 수 있는 FTP 서비스와 함께, SSH 파일 전송 프로토콜로도 알려져 있는 "보안 파일 전송 프로토콜"이 있다. 전송은 보안 로그인 및 보안 포트 포워딩을 위해 사용된 바와 동일한, 보안 쉘 또는 SSH 포트 # 22를 이용한다. 대안적인 파일 전송 애플리케이션은 덜 채택된 "파일 전송 액세스 및 관리" 또는 FTAM 및 ZIP 과 다른 알고리즘을 사용하는 데이터 압축을 포함한다.
웹 브라우저 및 웹 서버-다른 광범위한 등급의 계층 7 애플리케이션은 "하이퍼텍스트"로 지칭되는 특수화된 포맷팅 기술을 사용하는 프로그램을 포함한다. 이들 애플리케이션은 하이퍼텍스트 문서를 저장하는 "웹 서버", 이들을 읽고 디스플레이하는 "웹 브라우저", 및 신속한 액세스를 촉진시키기 위해 전용의 등록 포트 할당을 구비한 특수화된 통신 전송 프로토콜을 포함한다. 주요 구성요소인 웹 브라우저는 인터넷, 인트라넷, 또는 다른 패킷 교환형 네트워크로부터 하이퍼텍스트 문서를 다운로드하고 디스플레이하도록 설계된 그래픽 배향 통신 프로그램이다. 브라우저의 네트워크 동반자인 웹 서버는, 그 파일로의 액세스를 요청하는 브라우저에 하이퍼텍스트 문서를 배포하는 데 사용되는 고속 컴퓨터이다. 하이퍼텍스트는 간단한 이메일 뷰어로부터 사용할 수 없는 매립된 포맷으로 이메일을 디스플레이하는 데 사용될 수도 있다.
동작 시, 브라우저는 다른 브라우저와의 직접 연결을 설정하지 않지만, 그러나 대신에 둘 모두에 액세스할 수 있는 하나 또는 그 이상의 웹 서버를 포함하는 중개자(intermediary)를 통해 정보를 교환한다. 문서를 게시하기 위해, 사용자는 인터넷이나 또는 임의의 다른 개인 또는 공용 네트워크 또는 클라우드에 연결된 서버 상에 호스트된 "웹 페이지"에 문서 또는 이미지를 간단히 "게시"한다. 문서를 게시하는 사용자는, 게시된 파일에 액세스하려는 사람 및 그들이 읽기 전용 권한 또는 편집 권한이 있는지의 여부를 결정한다. 문서를 호스트하는 웹 서버는 문서 발행자에 의해 소유하거나 관리될 수 있으며, 또는 게시된 콘텐트 및 웹 페이지 디자인에 포함되지 않는 무관한 당사자를 대표할 수 있다.
하이퍼텍스트 기반 문서는 이것이 디스플레이될 윈도우에 최적으로 잘 맞도록 동적으로 조정되는 방식으로, 텍스트, 그래픽, 및 비디오 내용을 표시하기 위해 HTML 또는 "하이퍼텍스트 마크 업 언어"로 지칭되는 특수화된 문서 포맷 언어를 사용한다. HTML의 기능은 디스플레이될 자료를 다운로드하고 또한 이를 페이지 단위로 동적으로 포맷한다. 각각의 페이지는 텍스트 및 하드 코딩된 소프트웨어로부터 로딩된 텍스트 또는 파일 또는 데이터베이스로부터 다운로딩된 정적 및 동적 크기의 필드를 모두 포함할 수 있다. 디자인 및 기입에는 더욱 복잡하지만, HTML 페이지 콘텐트를 위해 데이터베이스를 사용하는 이점은, 상기 데이터베이스가 자주 또는 정기적으로 업데이트될 수 있고 또한 상기 웹 페이지가 자동으로 조정된다는 점이다. 그렇지 않으면, 콘텐트가 변경될 때, 모든 웹 페이지가 다시 디자인되어야만 한다. 또한 HTML은 텍스트가 동적으로 줄 바꿈하는 부유 개체뿐만 아니라, 고정된 위치 푸터, 헤더, 사이드바, 및 필드를 포함하는 개체의 위치를 지정한다.
개체 자체는 정적 그래픽 개체 또는 사진, 애니메이션 그래픽, 플래시 비디오, 오디오 파일, 비디오, 및 HD 영화 등을 나타낼 수 있다. 텍스트와 마찬가지로, 포맷팅은 하드 코딩될 수 있거나 또는 동적으로 링크될 수 있다. 링크된 개체는 프레젠테이션 계층 5 기능을 사용하여 하나의 포맷 또는 개체 타입으로부터 다른 개체로 동적으로 변환될 수 있다. 예를 들어, 스프레드 시트 내의 사전 정의된 필드는 페이지가 드로잉되는 시간에 정적 스냅 샷 또는 그래픽으로 변환될 수 있다. 다른 개체 또한 다른 서버 및 웹 사이트로의 라이브 링크를 포함할 수 있으며, 클릭될 때 뷰어의 사전 승인 여부와는 관계없이, 웹 페이지 뷰어의 컴퓨터, 개인 및 연락처 또는, 선호도 및 관심사에 관한 정보를 전송할 수 있다. 본질적으로, 링크의 클릭은 링크된 웹 페이지의 호스트의 용어 및 조건 묵시적으로 승인된 것으로 간주된다. 예를 들어, 새로운 자동차에 대한 배너 광고를 클릭하면 새로운 자동차 구매에 관심 있는 사람들을 위해 데이터베이스에 정보를 송신할 수 있으며, 또한 사용자의 개인 이메일로 전송되는 새로운 자동차 프로모션에 대한 원치 않는 "스팸" 이메일로 나타난다. 동적 웹 페이지에서 배너 광고 필드의 내용은 모두 뷰어가 링크를 클릭하고 광고를 보는 단일 동작을 기반으로 하여, 그 시간부터 자동으로 자동차 광고를 디스플레이하기 시작한다. 인터넷 마케팅 회사는 시청자 행동의 수집이 실제인지 또는 의도하지 않은 것인지의 여부를 알지 못하고 사용자에 대한 이런 정보를 판매자 및 광고주에게 판매한다.
중요한 것은 하이퍼텍스트 기반 문서에서, 요청한 웹 페이지를 구성하는 데 사용된 대부분의 텍스트와 거의 모든 개체는 웹 페이지의 HTML 다운로드에 포함되지 않고 대신 초기 HTML 페이지가 로드된 후에 로드된다는 점이다. 문서 및 개체는 전술한 FTP 프로토콜을 사용하여 로딩되지 않으며, 대신에 HTTP 또는 "하이퍼텍스트 전송 프로토콜"로서 지칭되는 더욱 동적인 프로세스를 사용한다. HTTP는 프레젠테이션 계층 6 에서 동작하고 웹 브라우저와 같은 계층 7 애플리케이션에 서비스하는 애플리케이션 및 데이터 포맷을 나타낸다.
계층 4 에서 전송 계층인 HTTP는 웹 액세스를 위해 그 자신의 예약된 포트 # 상에서, 특히 포트 # 80 에서 동작한다. 포트 # 80 이 방화벽이나 보안 소프트웨어(FTP 포트 21 과 같은)에 의해 승인되거나 차단 해제되는 경우가 자주 있기 때문에, 포트 80은 해커가 무단으로 문서 또는 액세스 권한을 얻으려 하거나, 또는 서버 상에서의 악의적인 공격인 "서비스 거부" 공격을 시작하여 해커 또는 적으로부터 무의미한 FTP 또는 HTTP 요청을 서비스하도록 이를 강제함으로써 이것이 정상적인 기능을 지원하는 것을 방지하기에 좋은 표적이다.
HTTP를 통해 웹 페이지를 다운로딩하기 위한 절차가 도 35a에 도시되어 있으며, 여기서 IP 어드레스 "NB" 및 애드혹 포트 # 9999를 갖는 노트북(35)은 IP 패킷(590)을 사용하는 IP 어드레스 "S1"에서 웹 서버(21A)로부터 HTML 문서를 요청한다. 웹 페이지를 요청하기 위해, IP 패킷(590)은 웹 서버의 포트 # 80을 지정한다. 응답 시, 웹 서버(21A)는 그 후 그 패킷(591)으로부터의 어드레스 및 포트 번호를 스와핑함으로써 HTML 페이로드를 첨부하며, 즉 소스는 이제 IP 어드레스 9999 에서 포트 # 80 에 있고, 목적지는 이제 IP 어드레스 "NB"에서 포트 # 9999 에 있다. 상기 HTML 데이터는 높은 페이로드 신뢰성을 보장하기 위해 TCP 기반 연결을 사용한다.
HTML 코드를 수신한 후, 노트북의 브라우저는 HTML 파일을 읽고, IP 호출을 하나씩 식별하여 웹 페이지 내로 콘텐트를 다운로드한다. 도시된 예에 있어서, 그래픽을 위한 제1 호출은 제1 다운로드와 동일한 웹 서버(21A)로부터 콘텐트를 다운로드하므로, 노트북(35)은 목적지 IP 어드레스 "S1" 및 포트 # 80 에 IP 패킷(592)을 다시 준비한다. 노트북의 포트가 동적으로 할당되기 때문에, IP 패킷(592)의 소스는 애드혹 # 10001로 변하지만, 그러나 IP 어드레스 "NB"로부터 존재한다. 응답 웹 서버(21A)가 IP 패킷(593)의 페이로드 내로 JPEG를 캡슐화함으로써, 소스가 IP 어드레스 "NB"에서 포트(10001)의 목적지를 갖는 IP 어드레스 "S1"로부터 포트 # 80 이도록 소스 및 목적지 어드레스를 스와핑한다. IP 패킷(593)의 수신에 따라, 노트북의 브라우저는 페이로드를 풀고, 프리젠테이션 계층 6을 사용하여 그래픽 포맷을 브라우저 호환 가능한 포맷으로 변환하고, 그 후 사진을 브라우저 페이지, 즉 계층 7 애플리케이션으로 크기를 결정하여 설치한다.
도시된 바와 같이, HTML 페이지에서의 다음 개체 다운로드 요청은, 웹 서버(S1)로부터가 아니라 완전히 다른 서버, 특히 IP 어드레스 "S5"를 갖는 미디어 서버(511)로부터이다. 따라서 노트북(35)의 웹 브라우저는 이번에 목적지 IP 어드레스 "S5"에서 목적지 포트 # 80에 대한 다른 HTTP 요청으로서 IP 패킷(594)을 준비한다. 소스 IP 어드레스는 "S1"으로 유지되지만, 동적 포트 할당에 의해, 소스 포트 #는 다시 이번에는 포트 # 10020으로 변경된다. 응답 시, 미디어 서버(511)는 IP 어드레스 "S5" 및 포트 어드레스(80)를 갖는 소스로부터 노트북의 가장 최근의 IP 어드레스 "NB" 및 포트 # 10030으로 IP 패킷(595)을 준비한다. IP 패킷(595)에 캡슐화된 첨부된 페이로드는 MPEG을 포함한다. 일단 수신되었다면, 프리젠테이션 계층 6은 파일을 준비하고, 이들을 브라우저 애플리케이션이 이들을 설치하는 애플리케이션 계층 7으로 전달하여, 완료 될 때까지 계속해서 HTML 코드를 읽고 웹 페이지를 조립한다.
따라서 HTML을 사용하면, 웹 페이지의 콘텐트가 FT 사용하여 송신된 파일처럼 단일의 다운로드로부터 구성되지는 않지만, 그러나 지정 내용을 각각 전달하는 다른 서버에 연속적인 호출을 사용한다. 이런 개념이 도 35b에 도시되어 있으며, 여기서 HTML 발생 페이지(591), 텍스트, 및 JPEG(593)는 웹 서버 "S1"의 포트 # 80으로부터 다운로드되고, MPEG 비디오(595)는 미디어 서버(511)의 포트 # 80으로부터 다운로드되며, PNG 사진(596) 및 JPEG(597)는 파일 서버(27)의 포트(80)로부터 온다. 이런 방식으로, 웹 페이지는 다중 소스로부터 구축된다. 다양한 텍스트, 그래픽, 및 오디오-비디오 요소를 요청하는 HTML 코드 외에도, 문서 생성을 담당하는 중앙 명령 또는 제어가 없다. 예를 들어, 하나의 서버가 트래픽 혼잡으로 인한 그 자신의 로딩 때문에 느린 응답을 나타낸다면, 웹이지(591)의 페인팅이 걸리고, 이것이 완료되기 전에 잠시 중단될 수 있다. 이런 중단은, 예를 들어 야후와 같은 웹 페이지의 호스트와는 관련이 없지만, 그러나 대신에 HTML 웹 페이지에 의해 호출하는 링크된 서버로부터, 예를 들어 시엔엔(CNN) 또는 폭스 뉴스 서버로부터 유발될 수 있다.
HTML 웹 페이지의 하나의 위험은, 특히, 사용자의 집 어드레스, 신용카드 번호, PIN, 사회 보장 번호 등의 진정한 필요로 올바른 윤리적 비즈니스의 후원 하에 해적 사이트로 링크가 재지향된다면, 해커 및 멜웨어가 사용자에 대한 정보를 수집할 수 있는 기회이다.
월드 와이드 웹(World Wide Web) - 보편적이지는 않지만, HTML의 하나의 예시적인 대중적인 애플리케이션은 월드 와이드 웹에서 사용할 수 있는 문서, 특히 문자 "www"로 시작하는 브라우저 내로 어드레스를 타이핑함으로써 도달되는 웹 어드레스를 위한 웹 브라우징이다. 사용자가 브라우저의 어드레스 표시 줄 내로 "유니폼 리소스 로케이터(uniform resource locator)" 또는 URL, 예를 들어, "HTTP://www.yahoo.com"으로 도 알려진 웹 어드레스를 입력할 때마다, 브라우저는 목표로 하는 IP 어드레스를 결정하기 위해 바로 위의 라우터에 질의를 송신한다. 도 3에 이미 도시된 이런 프로세스는 포트 # 53 요청, DNS 룩업에 대한 서비스 요청을 식별하는 포트 번호로 라우터(62A)에 IP 패킷을 송신하는 노트북(60)을 포함한다. 라우터(62A)는 DNS 요청을 도메인 네임 서버 라우터(62A)에 포워딩하고, 이는 다시 목표 도메인의 숫자 IP 어드레스를 공급한다. 예를 들어, 서버(66A)가 숫자 IP 어드레스 "S11"을 갖는 야후 웹 서버라면, DNS 서버(71)는 그 IP 어드레스를 라우터(62A)로 복귀시킬 것이고, IP 패킷은 IP 어드레스 "S11" 및 웹 페이지 목적지 포트 # 80으로 구성된다.
많은 문서가 월드 와이드 웹 상에 액세스 가능하지만, 그러나 모든 인터넷 문서가 웹 상에 포스팅되는 것은 아님을 인식해야 한다. 일부 웹 페이지는 예를 들어 공공 네트워크에 대해 액세스할 수 있지만, 주로 이들을 위한 탐색으로부터 해커를 좌절시키기 위해 접두사 www를 사용하지 않는다. 다른 웹 서버는 방화벽 뒤에 숨겨진 개인 네트워크 또는 인트라넷을 사용하며, 또한 방화벽 뒤에서만 액세스하거나 또는 "가상 사설 네트워크" 또는 VPN으로 서 알려진 암호화된 파이프 또는 터널을 사용한 액세스를 통해 액세스할 수 있다. 월드 와이드 웹의 고유한 특성을 이해하기 위해, 그 결함 및 취약점뿐만 아니라, 이점과 강점에 대해 모두 책임 있는 그 개발 및 진화를 이해하는 것이 중요하다.
역사적으로, 월드 와이드 웹과 브라우저의 발명 이전에, 인터넷에 대한 통신은 주로 FTP 프로토콜을 사용하는 이메일 및 파일 전송에 의존했다. 그 후 1989 년에 팀 베너스 리(Tim Berners-Lee)는 "하이퍼텍스트 전송 프로토콜" 또는 HTTP를 사용하여 클라이언트와 서버 사이에 첫 번째 성공적인 인터넷 통신을 시연했다. 그 후, 일리노이 어바나-샘페인 대학교에서 슈퍼컴퓨팅 애플리케이션을 위한 내셔널 센터에서, 마크 앤드리슨(Marc Andreesen)은 선구적이고 직관적인 인터페이스, 다중 인터넷 프로토콜 지원, 용이한 설치, 견고한 안정성, 및 좋은 신뢰성뿐만 아니라, FTP, NNTP 및 Gopher 와 같은 초기 프로토콜의 하위 호환 지원 가능한 매킨토시 및 마이크로소프트 윈도우즈 환경과의 호환성으로 유명한 모자이크(Mosaic)라는 최초의 완전한 기능을 갖춘 브라우저를 개발했다. 주요 의미 중, 상기 모자이크는 별도의 창에서 그래픽을 열기 보다는 하나의 페이지 상에 이미지 및 텍스트를 함께 디스플레이하는 최초의 브라우저였다.
상기 모자이크는 넷스케이프 네비게이터(Netscape Navigator)로 신속히 상업화되었으며, 여러 관점에서 인터넷 혁명과 개인 및 비즈니스 애플리케이션을 위한 웹 사이트의 광범위한 사용을 촉진시키는 데 책임이 있다. 오늘날 수많은 브라우저가 존재하지만, 파이어폭스와 마이크로소프트 익스플로러, 애플 사파리, 및 크롬뿐만 아니라 모자이크와 넷스케이프의 직계 후손은 현재 가장 널리 사용되는 브라우저이다. 다른 등급의 애플리케이션, 웹 검색 엔진이 월드 와이드 웹 상에서의 문서 및 콘텐트 검색을 촉진시키기 위해 나타났다. 구글 및 야후와 같은 검색 엔진이 현재 시장을 장악하고 있다.
기업이 인터넷에 몰려들면서, 전자 상거래(e-commerce)는 아마존, 이베이, 바네스 앤 노블, 베스트 바이, 및 알리바바와 같은 일반 사이트에서 웹 기반 판매 및 구매로 탄생했다. 시장 분열은 곧 일반적인 전자 상거래 웹 사이트를 제공하기보다는, 지정한 타입의 제품이나 서비스를 전문으로 하는 벤더가 뒤를 이었다. 예를 들어, 프라이스라인(Priceline), 익스피디어(Expedia), 오르비츠(Orbitz), 사브레(Sabre)와 같은 여행 및 운송을 위한 비교 쇼핑에 기반하는 상업적 상인이 항공사의 자체 이마켓 플레이스(e-marketplace)와 함께 빠르게 나타났다. 음악, 비디오, 전자 책, 게임, 및 소프트웨어를 포함하는 "콘텐트"를 다운로드하려는 사용자를 위해, 애플의 아이튠, 월마트, 아마존 MP3, 구글 플레이, 소니 언리미티드 뮤직, 킨들 파이어, 및 윈도우즈 스토어와 같은 공급자가 온라인 서비스를 제공한다. 아이허트(iHEART) 라디오와 함께, 아이튠, 구글 플레이, 넷플릭스, 후루 플러스, 아마존 프라임과 같은 오디오 및 비디오 스트리밍 서비스, 및 컴캐스트(Comcast Xfinity)와 같은 케이블 제공업체가 특히 항공기, 버스, 리무진, 및 전세계 단말기와 커피숍에서 이제 점차 대중적으로 되고 있다.
프라이버시 및 보안에 대한 우려에도 불구하고, 오늘날 어린이 및 젊은 세대의 성인은 공공 웹 사이트 상에 엄청난 양의 개인 정보를 게시한다. "소셜 미디어"라고 불리는 이 산업은 문서의 편리한 공개, 업데이트, 및 편집을 지원하는 웹 사이트로 시작되었으며, 여기서 개인은 웹 로그 또는 "블로그" 상에 시간 순서대로 자신의 의견을 게시하였다. 그 후 유튜브는 홈메이드 비디오를 게시하고 배포할 수 있는 능력을 구비한 떠오르는 아티스트를 가능하게 하였다. 페이스북은 이러한 트렌드를 확장하여, 사진 및 비디오 게시와 대화형 포맷으로 사진 및 비디오 게시로 시간순으로 병합된 블로그 기능을 제공하였으며, 여기서 당신의 "홈 페이지"의 시청자가 그들이 읽은 것이나 본 것을 "좋아요" 할 때를 포함하는 의견을 게시한다. 또한, 페이스북은 또한 연락처 관리, 페이스북에 추가할 친구들의 연락처 목록 검색, 및 계정 소유자가 자신의 홈페이지에 대한 액세스를 요청하거나 무시함으로써 사람들을 "친구"로 허용했다. 사람들의 개인 연락처 관리자에게 도달함으로써, 페이스북 사용자의 수가 기하급수적으로 증가하여, 만료된 연락처 정보를 가진 사람들이 소셜 미디어를 통해 서로를 재발견할 수 있게 하였다. 동일한 소셜 미디어 방법은 데이트, 중매, 또는 성행위(합법 또는 불법)를 얻기 위해, 그리고 예를 들어 링크드인(LinkedIn)을 사용하여 연락처 산업 동료를 위한 전문 분야에 적응되었다.
인터넷과 OSI 패킷 교환형 네트워크와 동일한 오픈 소스 철학에 기초하여, 상기 월드 와이드 웹은 중앙 명령이나 통제가 결여되어 있으며 또한 이런 것이 규제되지 않은 상태로 존재하므로, 임의의 정부나 규제 기관이 그 콘텐트를 제어, 제한 또는 검열하는 것을 어렵게 하였다. 더욱이, 개인 정보를 공개함으로써, 이는 그 패스워드를 더 잘 추측하고, 그 활동을 관찰하고, 심지어 GPS 및 처리 정보를 사용하여 그 소재를 추적하기 위해, 범인이 그 공개 정보를 수집하는 표적을 "사례"로 하는 것이 더 쉬워졌다. 일부 경우에 있어서, 예를 들어. 크레이그 목록(Craig's List)로 지칭되는 오픈 소스 연락처 및 소개 서비스 상에서, 성범죄자와 살인자는 그 비뚤어진 범죄의 희생자를 모집하기 위해 그들의 신분과 의도를 위장했다. 그 표적을 모니터링하기 위해 월드 와이드 웹 및 소셜 미디어를 사용하는 범죄자 및 해커를 제외하고, 최근 뉴스에 따르면 정부는 예상 원인이나 그들이 그렇게 할 것을 승인하는 영장 없이, 시민의 이메일, 음성 통화, 웹 사이트, 블로그, 및 심지어 일과를 추적하고 모니터링하는 것으로 밝혀졌다. 그러한 침범을 정당화하는 데 사용되는 하나의 논거는, 공개 사이트 상에서 또는 공공 네트워크에 대해 자유롭게 배포된 정보가 "공정한 게임"이며, 또한 대중 영화 "소수 보고서"와 같은 "미래 범죄"와 같은 범죄 및 테러가 발생하기 전에 사전에 예방할 필요성은 그 자체로 이러한 공격적인 감시 및 정보 활동에 대한 정당성을 나타낸다.
신분 도용 및 원치 않는 정부 침입에 대한 반작용으로서, 소비자는 스냅챗(Snapchat)과 같은 사이트 및 당신이 알고 믿는 누군가인 다른 당사자의 확인 또는 "인증"을 요구하는 강화된 보안 및 프라이버시를 보고하는 전화 서비스로 옮겨가고 있다. 그러나 이제 그들이 언급하고 있는 이러한 "신뢰 영역"은 패킷 교환형 통신 네트워크에서 사용 가능한 보안 방법에 의존한다. 이 애플리케이션의 시작 부분으로부터 수집되는 바와 같이, 이들 네트워크, 통신 프로토콜, 웹 사이트, 및 데이터 저장소는 안전하지 않으며, 그렇지 않다면 오늘 언론에서 사이버 범죄 사례가 너무 많이 보고되지 않을 것이다.
이메일 애플리케이션 - 패킷 교환형 네트워크를 통한 가장 흔하고 오래된 애플리케이션 중 하나는 이메일 또는 "이메일"이다. 이 프로세스가 도 36에 도시되어 있으며, 여기서 숫자 IP 어드레스 "NB" 및 동적 포트 할당을 갖는 노트북(35)은 이메일 IP 패킷(601)을 이메일 서버(600)에 업로드한다. 그 캡슐화된 SMTP 이메일 페이로드와 함께, TCP 기반 이메일 패킷(601)은 그 소스 IP 어드레스 "NB"와 함께 그 목적지 IP 어드레스 "S9", 그 목적지 포트 # 21, 또는 대안적으로 포트 # 465, 그리고 그 애드 혹 포트 # 10500를 포함한다. 포트 # 21이 간단한 메일 전송 프로토콜 SMPT을 사용하는 이메일 서비스를 나타내는 반면에, 포트 # 465는 SSL 기술을 기반으로 하는 "안전한" 버전의 SMTPS를 나타낸다. 그러나 최근 뉴스에 따르면 SSL은 해커에게 완전히 면역이 되지 않는 것으로 밝혀졌다.
이메일 IP 패킷(601)의 수신에 응답하여, 이메일 서버(600)는 포트 # 21을 사용하여 또는 SSL 포트 #46을 사용하여 소스 IP 어드레스 "S9"에서 이메일 서버(600)로부터 포트(10500)에서 목적지 IP 어드레스 "NB"로 송신된 SMTP 확인을 포함하는 IP 패킷(602)을 복귀시킴으로써 그 수신을 인지한다. 반면에, 이메일 서버(600)는 목적지 IP 어드레스 "DT" 및 애드혹 포트 # 12000 에서 소스 IP 어드레스 "S9" 및 IMAP 포트 # 220으로부터 데스크탑(36)으로 IP 패킷(605)에서의 IMAP 메시지로서 이메일을 동시에 푸쉬한다. 이메일 메시지의 수신에 따라, 데스크탑(36)은 포트 # 12000 에서 소스 IP 어드레스 "DT"로부터 목적지 IP 어드레스 "S9" 및 포트(220)로 IP 패킷(604)을 구비한 이메일 서버(600)에 IMAP 메시지를 확인한다. 따라서 이메일 전달은 노트북(35), 이메일 서버(600), 및 데스크탑(36)에서의 수신자로부터 송신자를 포함하는 3자 처리를 포함한다. 통신에 있어서, 메시지를 확인하기 위해, 송신자는 SMTP 프로토콜을 이용하고, 메시지 수신자는 IMAP 프로토콜을 이용한다. 메시지. IMAP 교환은 그 파일 기록 매치를 보장하기 위해 서버 상에 그리고 데스크탑 상에 데이터베이스를 업데이트한다. 이메일 서버가 중개자로서 동작하기 때문에, 노트북 대 서버 IP 패킷(601) 또는 서버 대 데스크탑 IP 패킷(605)을 가로챔으로써, 또는 이메일 서버(600)에 저장된 파일 자체를 해킹함으로써 통신을 가로챌 기회가 있다. 대안적으로, "플레인 올드 포스트 오피스(post-office)" 또는 POP3 애플리케이션이 메일 전달을 위해, 그러나 파일 서버 동기화 없이 사용될 수도 있다.
다른 계층 7 애플리케이션 - 통신 및 방송 애플리케이션과 함께 텔넷, 네트워크 관리, 주변 드라이버, 백업 유틸리티, 보안 프로그램을 사용하는 터미널 에뮬레이션을 포함하여, 파일 관리, 웹 브라우저, DNS 서버, 및 이메일 기능 외에도, 다양한 다른 애플리케이션이 존재한다. 예를 들어, 백업 애플리케이션은 안드로이드, iOS, 애플 타임 머신, 애플 아이클라우드, 카르보나이트(Carbonite), 바라쿠다, 드롭박스, 구글 드라이브, 마이크로소프트 원 드라이브, 박스 등을 위한 사용자 버전을 포함하는 상용 백업 소프트웨어뿐만 아니라, 이제 제4 세대의 화신인 TCP 기반 "네트워크 파일 시스템" 또는 NFS를 포함한다. 동작 시, 클라우드 저장 디바이스는 이메일 서버와 유사한 방식으로 네트워크에 연결된 드라이브 상에 데이터를 저장한다. 상기 데이터는 파일 소유자가 권한을 부여한 경우 제3자에 의해 검색될 수 있다. 이메일 처리처럼, 전송 및 서버에 저장될 동안, 데이터를 해킹할 수 있는 기회가 많이 있다.
통신 및 방송 애플리케이션은 NNTP의 "네트워크 뉴스 전송 프로토콜", 뉴스 서버 사이에 뉴스 기사를 전송하기 위해 또한 기사를 게시하기 위해 사용되는 애플리케이션 프로토콜뿐만 아니라, 음성 및 VoIP, "인터넷 릴레이 채팅" 또는 IRC 와 같은 멀티미디어 통신 세션을 제어하는 데 널리 사용되는 SIP "세션 시작 프로토콜, 텍스트의 형태로 메시지를 전달하기 위한 애플리케이션 계층 프로토콜을 포함한다. 스카이프, 라인(Line), 카카오톡, 바이퍼(Viper), 왓츠앱(WhatsApp), 등과 같은 "오버 더 탑" 또는 OTT 통신업체는 VoIP를 사용하여 인터넷을 통해 VoIP를 사용하여 텍스트, 그림, 및 음성을 전달하기 위해 주문형 애플리케이션을 이용한다.
다른 애플리케이션은 프린터, 스캐너, 카메라 등의 맞춤형 주변기기 드라이버를 포함한다. 네트워크 애플리케이션은 "간단한 네트워크 관리 프로토콜" 또는 SNMP(Simple Network Management Protocol), 라우터, 스위치, 모뎀 어레이 및 서버를 포함하는 IP 네트워크 상에서 디바이스를 관리하기 위한 인터넷 표준 프로토콜, 자율적인 인터넷 시스템 사이에서 라우팅 및 도달 가능성 정보를 교환하기 위해 표준화된 외부 게이트웨이로서 "국경 게이트웨이 프로토콜" 또는 BGP 애플리케이션, 및 서비스, 사용자, 시스템, 네트워크 및 서비스에 대한 정보 공유를 허용함으로써 디렉토리를 관리하기 위한 "경량 디렉토리 액세스 프로토콜" 또는 "LDAP(lightweight directory access protocol), 및 개인 및 인트라넷을 통해 사용할 수 있는 애플리케이션을 포함한다. LDAP 연결된 애플리케이션의 하나의 특징은 단일 로그인이 단일 인트라넷을 통해 연결된 다중 디바이스에 대한 액세스를 제공한다는 점이다. 다른 네트워크 애플리케이션은 CMIP 또는 "공통 관리 정보 프로토콜"을 포함한다.
다른 중요한 네트워크 어플리케이션은 DHCP 또는 "동적 호스트 구성 프로토콜"이다. DHCP는 기업 네트워크, 캠퍼스 네트워크, 및 지역 ISP, 즉 인터넷 서비스 공급자를 통합하기 위해, 홈 네트워크와 WiFi 라우터에 속하는 범위의 네트워크 서버로부터 IP 어드레스를 요청하는 데 사용된다. DHCP는 IPv4 와 IPv6 모두에 사용된다.
서비스 품질
네트워크의 성능을 고려할 때, 아래의 몇 가지 요소가 고려된다.
- 데이터 속도, 즉 대역폭
- 서비스의 품질
- 네트워크 및 데이터 보안
- 사용자 프라이버시
위의 고려 사항 중, 데이터 전송률은 초당 수백만 비트 또는 Mbps로 쉽게 계량된다. 반면 서비스 품질 또는 QoS는 대기 시간, 음질, 네트워크 안정성, 간헐적인 동작 또는 빈번한 서비스 중단, 동기화 또는 연결 실패, 낮은 신호 강도, 지연된 애플리케이션, 및 긴급 상태 중 기능적인 네트워크 이중화를 포함하는 여러 가지 요소를 포함한다.
프로그램, 파일 및 보안 관련 검증에 대해, 데이터 정확성이 중요한 요소이다. 어떤 요소가 중요한지는 패킷 교환형 네트워크를 통해 운반되는 페이로드의 특성에 달려 있다. 이와는 대조적으로, 실시간 애플리케이션을 구성하는 음성 및 비디오에 대해, 패킷 전달 시간에 영향을 미치는 요소가 중요하다. 품질 요소 및 이들이 비디오, 음성, 데이터 및 텍스트와 같은 다양한 애플리케이션에 어떻게 영향을 미치는지는 도 37에 도시된 표에 질적인 방식으로 도시된다. 일정한 고속 데이터 패킷 파형(610A)에 의해 전형적인 양호한 네트워크 상태는, 최소의 시간 지연, 명확한 강한 신호 강도, 신호 왜곡 없음, 안정된 동작, 및 패킷 전송 손실 없음이다. 간헐성을 갖는 낮은 데이터 전송률 패킷 파형(610B)에 의해 표시되는 간헐적인 네트워크는 비디오 기능에 가장 큰 영향을 끼쳐, 고통스럽게 느린 비디오 다운로드를 유발하고 비디오 스트리밍을 수용할 수 없게 한다. IP 패킷 파형(610C)에 의해 예시되는 짧은 주기의 차단으로 보다 낮은 유효 데이터 처리율로 동작하는 혼잡한 네트워크는, 덜컥거리는 간헐적인 운동, 퍼지(fuzzy) 영상, 부적절한 색깔 및 밝기에 의해 비디오를 심각하게 저하시킬 뿐만 아니라, 왜곡, 에코, 그리고 심지어는 전체 문장이 대화나 사운드 트랙으로부터의 누락에 의해 음성 또는 음성 통신을 저하시킨다. 그러나 혼잡한 네트워크에 있어서, 재방송에 대한 반복된 요청에 의해 TCP를 사용하여 데이터가 여전히 전달될 수 있다.
IP 패킷 파형(610D)에 의해 도시된 바와 같이, 불안정한 네트워크는 예측할 수 없는 주기의 많은 데이터 정지로 낮은 데이터 처리율을 나타낸다. 또한, 불안정한 네트워크는 파형(610D)에서 어두운 음영 패킷으로 표현되는 바와 같이 손상된 IP 패키지를 포함하며, 이는 TCP 기반 전송에서 재전송되어야만 하며 또한 UDP 전송에서는 단순히 변질되거나 부적절한 데이터로서 폐기되어야만 한다. 네트워크 열화의 레벨에 있어서, 심지어 이메일은 간헐적으로 되어, IMAP 동기화가 실패한다. 그 경량 데이터 포맷 때문에, 대부분의 SMS 및 문자 메시지는 비록 심각한 네트워크 혼잡에도 불구하고 약간의 전달 지연으로 배달되지만, 그러나 첨부물은 다운로드되지 않을 것이다. 불안정한 네트워크에서 모든 애플리케이션은 실패하여, 컴퓨터나 휴대폰의 정상 동작이 중단되어 예상 파일이 전달될 때까지 기다림으로 나타날 수 있다. 이러한 경우에는 비디오가 멈추고, 사운드가 고르지 않게 되어 이해하기 어려워지고, VoIP 연결은 몇 분 내에 12번 이상 반복적으로 끊어지며, 어떤 경우에는 완전히 연결되지 않는다. 마찬가지로, 이메일은 컴퓨터 아이콘이 끊임 없이 둥글게 회전하면서 멈추거나 지연된다. 진행률 막대가 모두 중단된다. 심지어 문자 메시지도 반송되고 "전달할 수 없다".
선택한 서버 또는 네트워크 상의 서비스 거부 공격의 심각한 거부 중 주요 서버 및 슈퍼 POP의 전력 장애, 과부하된 통화 용량, 대용량 데이터 파일 또는 UHD 영화의 전송을 포함하여, 여러 가지 요인이 네트워크 불안정성의 원인이 될 수 있지만, 네트워크의 QoS를 추적하는 데 사용된 주요한 요인은 그 패킷 손실 속도 및 패킷 대기 시간이다. 누락된 패킷은 IP 패킷이 전달될 수 없어 영구적으로 "타임 아웃"될 때, 또는 라우터나 서버가 IP 패킷 헤더의 체크섬 에러를 검출한 경우에 발생한다. UDP를 사용하는 패킷의 경우, 패킷이 손실되고, 계층 7 애플리케이션은 무엇이 손상되었는지를 알 수 있을 정도로 똑똑해야 한다. TCP 가 계층 4 전송에 사용되는 경우, 패킷은 재전송 요청을 받을 것이며, 추가로 잠재적으로 이미 오버로드된 네트워크에 로딩을 추가한다.
QoS, 전파 지연을 결정하는 다른 요소는 노드 대 노드로부터의 IP 패킷의 지연 또는 소스로부터 목적지로의 단방향으로, 또는 대안적으로 다시 소스로부터 목적지로의 왕복 지연과 같은 여러 가지 방법으로 정량적으로 측정될 수 있다. UDP 및 TCP 전송 프로토콜을 사용하는 패킷 전달 상의 전파 지연의 효과가 도 38에 대조되어 있다. 통합형 네트워크 전파 지연이 증가함에 따라, VoIP 대화와 같은 왕복 통신을 수행하는 데 필요한 시간이 증가한다. UDP 전송(621)의 경우, 왕복 지연은 전파 지연에 따라 선형적으로 증가한다. 긴 전파 지연이 더 높은 비트 에러율과 관련되기 때문에, 손실된 UDP 패킷의 수가 증가하지만 그러나 UDP는 손실된 패킷의 재전송을 요청하기 때문에, 왕복 시간은 증가 된 지연으로 선형으로 유지된다. TCP 전송(620)은 패킷 전달을 확인하는 데 요구되는 핸드세이킹 때문에, UDP 보다 송신된 각 패킷에 대해 실질적으로 더 긴 왕복 시간을 나타낸다. 비트 에러율이 낮고 또한 대부분의 패킷이 재전송을 요구하지 않으면, TCP 전파 지연은 통합된 전파 지연에 따라 선형적으로, 그러나 더 높은 비율로, 즉 TCP(620)의 라인 경사도로 증가한다. 그러나 통신 네트워크가 전파 지연이 증가함에 따라 불안정해지면, 누락된 패킷의 재전송에 대한 프로토콜의 필요성 때문에 라인(622)에 의해 도시된 TCP 전송에 기인한 왕복 시간이 기하급수적으로 증가한다. 따라서 TCP는 VoIP 및 비디오 스트리밍과 같이 시간에 민감한 애플리케이션에 대해서는 금기 사항이다.
모든 패킷 통신이 동일한 전파 시간을 갖는 두 패킷이 없는 통계적이기 때문에, 네트워크의 단일 방향 대기 시간을 추정하는 가장 좋은 방법은 많은 수의 비슷한 크기의 IP 패킷의 왕복 시간을 측정함으로써, 그리고 단일 방향 대기 시간을 추정하기 위해 2로 나눔으로써 이루어진다. 100 ms 까지의 지연 시간이 현저하며, 200 ms 까지는 상당히 매우 좋은 것으로 간주되며, 300 ms 까지는 여전히 허용 가능한 것으로 간주된다. 인터넷 상에서 동작되는 OTT 애플리케이션에 의해 쉽게 접하는 500 ms의 전파 지연에 대해, 상기 지연은 사용자에게 불편해지며 또한 정상적인 대화를 방해한다. 음성 통신에 있어서, 특히 이런 긴 전파 지연은 "나쁜" 소리를 내고 또한 반향으로 나타날 수 있어, "틱(twangy)" 또는 금속성 소리를 생성하여, 상대방이 그 마지막 순간까지 당신의 응답을 얻기 위해 기다릴 동안 정상적인 대화를 중단하여, 아마도 자신의 마지막 의견에 대한 응답을 기다리는 동안 정상적인 대화를 방해하고 아마도 왜곡되거나 이해할 수 없는 스피치로 나타날 수 있다.
명확해지기 위해, 통신의 단방향 대기 시간은, 부분적으로는 ICMP 패킷이 일반적으로 실제 IP 패킷에 비해 경량이기 때문에, 핑 테스트가 TCP의 "재송신 요청"을 사용하지 않기 때문에, 및 인터넷의 공공 네트워크에 대한 보상이 없기 때문에, 핑 테스트의 루트가 실제 패킹 루트와 매칭된다는 점에서, 계층 3 ICMP 유틸리티(HTTP ://www.speedtest.net 에서의 무료 네트워크 테스트와 같은)에 의해 수행된 핑 테스트와는 상이하다. 본질적으로, 핑이 오랜 지연을 경험할 때, 네트워크 또는 디바이스와 네트워크 사이의 일부 링크, 예를 들어 WiFi 라우터 또는 라스트 마일에 무언가 문제가 있지만, 그러나 그 자체의 좋은 핑 결과는 실제 패킷의 낮은 전파 지연을 보장 할 수 없다.
네트워크 보안을 향상시키기 위해, 암호화 및 확인 방법은 해킹, 스니핑, 또는 스파이를 방지하도록 자주 사용된다. 그러나 과도한 암호화와 다중 키 암호화 프로토콜은 대화 상대의 신원을 끊임없이 재확인하여, 추가적인 지연을 야기하며 이렇게 함으로써 효과적인 네트워크 대기 시간을 증가시키며, 보안을 향상시키는 비용에서 QoS를 저하시킨다.
사이버 보안 및 사이버 프라이버시
통신의 다른 2가지 주요 고려 사항은 사이버 보안 사이버 프라이버시이다. 관련이 있지만, 상기 2가지 문제는 다소 상이하다. "네트워크 보안, 컴퓨터 보안, 및 보안 통신을 포함한 사이버 보안은 컴퓨터 또는 통신 네트워크, 네트워크 액세스 가능 자원, 또는 네트워크 연결된 디바이스 내에 포함된 데이터의 무단 액세스, 오용, 수정, 또는 거부를 모니터링, 차단, 및 방지하는 데 사용되는 방법을 포함한다. 데이터는 개인 사진 이미지 및 비디오 기록물뿐만 아니라, 개인 정보, 생체 인식 데이터, 재무 기록, 건강 기록, 개인 통신 및 기록물을 포함할 수 있다. 네트워크 연결된 디바이스는 포인트 오브 세일(point of sale)(POS) 단말기, 가스 펌프, ATM 등과 같이 개인에 의해 사용되는 공공적으로 공유되는 디바이스뿐만 아니라, 휴대폰, 태블릿, 노트북, 데스크탑, 파일 서버, 이메일 서버, 웹 서버, 데이터베이스, 개인 데이터 저장소, 클라우드 저장소, 인터넷 연결된 디바이스, 연결된 자동차를 포함한다.
명백히, 보안 정보에 대해 무단 액세스를 시도하는 사이버 범죄자와 컴퓨터 해커가 범죄를 저지르고 있다. 불법적으로 얻어진 데이터가 개인 정보를 포함하고 있다면, 공격은 피해자의 개인 프라이버시의 침해이다. 그러나 역으로, 사이버 범죄에 대한 필요성 없이 프라이버시 침해가 발생할 수 있으며, 또한 실제로 막을 수도 없다. 오늘날의 네트워크 연결된 세계에 있어서, 개인의 정보의 무단 사용은 보안 침입의 필요성 없이 발생할 수 있다. 많은 경우에 있어서, 하나의 목적을 위해 데이터를 수집하는 회사는 다른 목적을 위해 데이터를 사용하고자하는 다른 클라이언트에게 자신의 데이터베이스를 판매할 수 있다. 심지어 마이크로소프트 구매 핫메일일지라도, 잠재적 클라이언트에게 스팸을 보내는 데 관심이 있는 광고주에게 메일 목록이 판매된 것으로 잘 알려져 있다. 그러한 행동이 사이버 프라이버시 침해로 간주되어야 하는지의 여부는 의견의 문제로 남는다.
인터넷 프라이버시, 컴퓨터 프라이버시, 및 사적 통신을 포함하는 "사이버 프라이버시"는 다른 사람과 정보의 수집, 저장, 표시, 또는 공유를 포함하여 그 사적인 그리고 개인의 정보 및 그 권리를 제어하기 위해, 개개인의 사적인 권리 또는 또는 의무를 포함한다. 개인 정보는 신장, 체중, 나이, 지문, 혈액형, 운전 면허증 번호, 여권 번호, 사회 보장 번호, 또는 그 이름을 알지 못하고 개개인을 식별하는 데 유용한 임의의 개인 정보를 포함하여, 개인 식별 정보를 포함할 수 있다. 미래에는 개인의 DNA 지도조차도 법적 기록물로 남을 수 있다. 개인 식별 정보 외에도, 비개인적 사적 정보에는 우리가 구입하는 옷의 브랜드, 자주 방문하는 웹 사이트, 담배를 피우는지 또는 총을 소유하는지, 어떤 종류의 차를 운전하는지, 우리가 우리 인생에 계약할 수 있는 질병이 무엇인지, 우리의 가족이 어떤 질병이나 질병의 병력을 가지고 있는지, 심지어 어떤 종류의 사람들이 우리에게 끌리는 지 등을 포함할 수 있다.
이런 개인 정보는 개인 소득, 세금, 재산 증서, 범죄 기록, 교통 위반 및 소셜 미디어 사이트에 게시된 모든 정보와 관련된 공개 기록과 결합하여 이해 당사자를 위한 강력한 데이터 세트를 형성한다. 인구 통계, 개인, 금융, 생물 의학, 및 행동 정보를 캡처하고 패턴, 추세, 및 통계적 상관관계에 대한 데이터를 수집하는 대규모 데이터 세트를 의도적으로 수집하는 것은 "빅 데이터(big data)"로서 알려져 있다. 보험 회사, 헬스케어 제공 업체, 제약 회사, 심지어는 의료 변호사를 포함하는 헬스케어 산업은 빅 데이터로서 저장된 개인 정보에 강력하게 관심을 갖고 있다. 자동차 및 소모품 회사도 마찬가지로 시장 전략 및 광고 예산을 관리하기 위해 이러한 데이터베이스에 대한 액세스를 원한다. 최근의 선거에서, 정치인조차도 유권자의 의견과 회피해야 할 정치적 쟁점을 더 잘 이해하기 위해 빅 데이터를 바라보기 시작했다.
사이버 프라이버시의 문제는 오늘날 빅 데이터가 개인 정보(이미 표준 절차 임)를 캡처하고 있는지의 여부가 아니라, 상기 데이터 세트가 당신의 이름 또는 알지 못하더라도 당신을 식별할 수 있는 충분한 개인 신원 정보를 보유하고 있는지의 여부가다. 예를 들어, 본래 미국 정부는 일단 개인 의료 계좌가 설정되었다면, 적정가 케어 법안(Affordable Care Act)에 가입하기 위해 사용된 헬스케어.정부(healthcare.gov) 웹 사이트에 의해 수집된 개인 정보가 파괴될 것이라고 말했다. 그 후, 최근의 게시에서, 미국 정부를 위해 데이터 수집을 촉진시키는 제3의 회사는 수집한 데이터를 보유하고 사용할 수 있는 권리를 부여하는 정부 계약서에 이전에 서명했으므로, 미국 정부에 누설된 개인적인 사적 정보는 실제로 사적인 것이 아니라고 밝혔다.
마지막으로, 유사한 기술적 방법을 사용하여 정부와 범죄 조직 모두에 의해 감시가 실시되고 있음을 언급해야만 한다. 범죄자들이 이러한 데이터를 수집 할 법적 권리가 분명히 없지만, 허가받지 않은 정부 감시의 사례는 더욱 애매하여, 나라마다 극적으로 다양하다. 예를 들어, 미국 NSA는 클라우드, 데이터베이스에 대한 액세스를 제공하기 위해 애플, 구글, 마이크로소프트 및 기타 업체에 반복해서 압력을 가했다. 정부 관리조차도 그들의 대화와 발표를 도청하고 가로챘다. 마이크로소프트의 한 부서 인 스카이프가 발신자의 콘텐트를 모니터링하는지 묻는 질문에 스카이프 최고 정보 책임자(CIO)가 갑자기 "코멘트 없음"이라고 대답했다.
사이버 범죄 및 사이버 감시 방법-사이버 보안의 주제에 초점을 맞추어, 디바이스, 네트워크, 및 컴퓨터 데이터에 무단으로 액세스하기 위한 수많은 수단이 존재한다. 예를 들어, 도 39는 사이버 범죄를 저지르고 보안 네트워크에 인가되지 않은 침입을 달성하는 데 사용되는 다양한 멜웨어 및 해커 기술을 도시하고 있다.
예를 들어, 인터넷 연결된 태블릿(33)을 사용하는 개인은 사무실 사무실 전화(9)에 전화를 걸거나, TV(36)에 메시지를 보내거나, 전화기(6)로 라인 교환된 POTS 네트워크를 여전히 사용하는 나라의 친구에게 전화를 걸거나, 또는 웹 스토리지(20)로부터 파일을 다운로드하거나, 또는 이메일 서버(21A)를 통해 이메일을 전송할 수 있다. 모든 애플리케이션이 인터넷의 정상적인 애플리케이션과 글로벌 상호 연결성을 나타내지만, 전체 네트워크를 통해 감시, 사이버 범죄, 사기, 및 신원 도용에 대해 많은 기회가 존재한다.
예를 들어, 셀룰러 라디오 안테나(18) 및 LTE 기지국(17)을 통해 또는 단거리 무선 안테나(26) 및 공용 WiFi 기지국(100)을 통해 네트워크에 연결하는 태블릿(33)에 대해, 인증되지 않은 침입자는 무선 링크를 모니터링할 수 있다. 마찬가지로, LTE 호출(28)은 차단형 라디오 수신기 또는 스니퍼(632)에 의해 모니터링되거나 "스니핑"될 수 있다. 동일한 스니퍼(632)는 WiFi 통신(29)을 모니터링하고 케이블 CMTS(101)와 케이블 모뎀(103) 사이에서 케이블(105) 상의 수신 단부 상에서 조정될 수 있다.
일부 경우에 있어서, LTE 호출은 해적 모조 타워(faux tower)(638)에 의해 차단되어, 태블릿(38)과 셀룰러 타워(18) 사이에서 전환된 통신 경로(639)를 설정할 수 있다. 패킷 교환형 네트워크를 통해 라우터(27), 서버(21A), 및 서버(21B), 및 클라우드 스토리지(20)로 송신된 통신은 중간 공격(630)에서 사람에게 종속될 수도 있다. 유선 탭(637)은 PSTN 게이트웨이(3)로부터 전화(6)로의 POTS 라인 상의 호출 및 PBX 서버(8)로부터 사무실 전화(9)로의 협동 PBX 라인 상의 호출을 가로챌 수 있다.
일련의 보안 침해를 통해, 스파이웨어(631)는 자체를 태블릿(33) 상에, 라우터(27) 상에, PSTN 브릿지(3) 상에, 클라우드 스토리지(20) 상에, 케이블 CMTS(101) 상에, 또는 데스크탑(36) 상에 설치할 수 있다. 트로이 목마(634)는 패스워드를 피싱하기 위해 자체를 태블릿(33) 또는 데스크탑(36) 상에 설치할 수 있다. 웜(636)은 특히 컴퓨터가 가능한 액티브 X 기능을 사용하는 마이크로소프트 운영 체제를 실행하는 경우, 데스크탑(36)을 공격할 수도 있다. 마지막으로, 서비스 공격의 거부를 론칭하기 위해, 바이러스(633)는 21A, 21B 및 21C로 번호가 매겨진 서버, 데스크탑(36), 및 태블릿(33)을 포함하는 네트워크 연결된 임의의 수의 디바이스를 공격할 수 있다.
도 40에 있어서, 통신 네트워크 및 사회 기반 시설의 어느 부분이 각각의 형태의 멜웨어 동작하는지에 대해 그래픽으로 간단하게 디스플레이되어 있다. 서버(21A), 광섬유 링크(23) 및 서버(21B)를 포함하는 도시된 클라우드(22)에 있어서, 사이버 공격은 바이러스(633), 중간 공격(630)의 사람, 정부 감시(640), 및 서비스 공격(641)의 거부를 포함할 수 있다. 통신 네트워크의 라스트 마일은 세 영역으로 분할된, 로칼 텔코/네트워크, 라스트 링크, 및 디바이스로 분할된 멜웨어 및 사이버 공격에 대해 심지어 더욱 광범위한 기회를 제안한다. 도시된 바와 같은 로컬 텔코/네트워크는 고속 광섬유(24), 라우터(27), 케이블 CMTS(101), 케이블/광섬유(105), 케이블 모뎀(103), WiFi 안테나(26) 및 LTE 라디오 타워(25)를 포함한다. 네트워크의 이러한 부분에서, 라디오 스니퍼(632), 스파이웨어(631), 바이러스(633), 및 중간 공격(630)이 모두 가능하다.
라스트 링크에 있어서, 디바이스에 대한 로컬 연결에서, 네트워크 연결은 스파이웨어(631), 라디오 스니퍼(632), 와이버탭(wiretap)(637), 및 모조 타워(638)에 노출되는 유선(104), WiFi(29) 링크, 및 LTE/라디오(33)를 포함한다. 예를 들어 태블릿(33), 노트북(35), 데스크탑(36)을 포함하지만 스마트폰, 스마트 TV, POS 단말기 등을 포함할 수도 있는 디바이스 자체는 스파이웨어(631), 트로이언 목마(634), 바이러스(633), 및 웜(636)을 포함하는 많은 공격에 노출된다.
이러한 감시 방법 및 스파이 디바이스는 상업 및 온라인 시장에서 즉시 사용할 수 있다. 도 41a는 2개의 그러한 디바이스, 즉 이더넷 근거리 네트워크 상의 트래픽을 모니터링하기 위해 사용되는 디바이스(650), 및 WiFi 데이터를 모니터링하기 위해 동일한 특징을 제공하는 디바이스(651)를 도시하고 있다. 셀룰러 통신을 모니터링하기 위해 사용되는 2개의 상업적으로 이용 가능한 디바이스(652, 653)가 도 41b에 도시되어 있다. 도 39의 네트워크 그래픽, 광섬유 클라우드 연결(23)의 스니핑(632)이 위협으로서 확인되지는 않았지만, 연구 중 이는 광통신에 대한 비 침입적 데이터 스니퍼, 즉 광섬유를 끊을 필요가 없는 데이터 스니퍼 또는 그 정상적인 동작이 심지어 일시적으로 손상되어 현재 존재하는 것으로 명백하게 되었다. 도 41c에 도시된 바와 같이, 디바이스(655)는 광섬유(656)의 예리한 굴곡부에서 광 누설을 포착함으로써 광섬유 통신 스니핑을 수행한다. 보호 피복이 사전에 제거되었다면, 광섬유(656)를 디바이스(655)의 클램프에 삽입하는 것은 섬유(657)를 작은 반경의 U-굴곡부 내로 강제하고, 여기에서는 광이 분석을 위해 전자 케이블(660)에 의해 랩탑(661)에 운반되는 광 센서(659) 내로 누출된다.
해킹 및 감시 방법을 사용하는 것 외에도, 휴대폰 대화 및 인터넷 통신을 모니터링하기 위해, 다양한 상업용 스파이웨어가 쉽게 사용될 수 있다. 도 42에 도시된 표는 상위 10등급의 스파이웨어 프로그램의 특징, 당신의 직원, 당신의 자녀, 및 당신의 배우자를 유익하게 감시하는 능력과 같은 광고 이점을 비교하고 있다. 이 특징부 세트는 사이버 프라이버시를 놀라울 정도로 설득력 있게 위반하는 많은 방법을 함께 포함하여, 전화, 사진 및 비디오, SMS/MMS 문자 메시지, 타사 인스턴트 메시징, 이메일, GPS 위치 추적, 인터넷 사용, 어드레스 북, 캘린더 이벤트, 도청, 제어 애플리케이션, 및 심지어 원격 제어 기능에 대한 감시를 포함하여 놀라울 정도로 포괄적이다.
실제로, 사이버 공격은 이제 너무 빈번해지고, 이들은 매일 추적된다. 도 43에 도시된 그러한 추적 사이트 중 하나는 탑재된 공격의 위치, 주기, 및 타입을 포함하여 보안 위반 및 디지털 공격을 글로벌 맵 상에 디스플레이하고 있다. 사이버 공격을 시작하기 위해서는 일반적으로 다음과 같은 여러 단계 또는 기술의 조합이 필요하다.
- IP 패킷 스니핑
- 포트 심문
- 프로파일링
- 사기꾼
- 패킷 도용
- 사이버 감염
- 감시
- 해적 관리
IP 패킷 스니핑 - 라디오 모니터링 디바이스를 사용하여, 사이버 범죄자는 사용자, 그 거래, 및 그 계정에 대한 중요한 정보를 얻을 수 있다. 도 44에 도시된 바와 같이, IP 패킷의 콘텐츠는 두 사용자 사이의 경로 어디에서나 얻을 수 있거나 또는 "스니핑"될 수 있다. 예를 들어, 사용자(675A)가 파일, 예를 들어 사진 또는 텍스트를 IP 패킷(670)에서 그 노트북(35)으로부터 그 친구(675B)의 전화기(32)로 송신할 때, 사이버 해적(630)은 송신자의 라스트 링크(673A)를 가로챔으로써, 송신자의 로컬 네트워크(672A)를 가로챔으로써, 클라우드(671)를 가로챔으로써, 수신자의 로컬 텔코(672B)를 가로챔으로써, 또는 수신자의 라스트 링크(673B)를 가로챔으로써, 임의의 많은 장소에서 IP 패킷을 발견할 수 있다. 가로챈 IP 패킷(670)에 포함된 관찰 가능한 데이터는, 통신에 사용된 디바이스의 계층 2 MAC 어드레스, 수신측의 송신자의 계층 3 어드레스, 즉 전송 프로토콜, 예를 들어 UDP, TCP 등을 포함하는 패킷의 목적지를 포함한다. 또한, IP 패킷은 요청되는 서비스의 타입을 잠재적으로 정의하는 송신 및 수신 디바이스의 계층 4 포트 번호 및 데이터 파일 자체도 포함한다. 파일이 암호화되지 않았다면, 파일에 포함된 데이터는 사이버 해적(630)에서 직접 판독될 수도 있다.
페이로드가 암호화되지 않았다면, 계좌 번호, 로그인 순서, 및 패스워드와 같은 텍스트 정보가 판독될 수 있으며, 또한 가치 있다면, 범죄 목적을 위해 도난당하거나 도착(倒錯)될 수 있다. 페이로드가 비디오 또는 그림문자(pictographic) 정보가 포함되어 있다면, 콘텐트가 사용하는 계층 6 애플리케이션 포맷을 결정하기 위해 몇 가지 추가 동작이 필요하지만, 그러나 일단 식별되었다면 상기 콘텐트는 공개적으로 보여질 수 있거나, 게시될 수 있으며, 또는 아마도 통신 당사자 중 하나 또는 둘 모두를 협박하는 데 사용할 수 있다. 이러한 사이버 공격은 사이버 해적이 개인적으로 통신 당사자를 알지 못하기 때문에 "중간 공격의 사람"으로서 지칭된다.
이미 기재된 바와 같이, 클라우드에서의 IP 패킷 라우팅이 예측할 수 없기 때문에, 클라우드(671)의 모니터링이 더욱 어려운데, 그 이유는 사이버 해적(630)이 IP 패킷의 중요한 정보가 처음 나왔을 때 이를 캡처해야만 하기 때문에, 이후의 패킷이 동일한 루트 및 스니핑된 패킷을 따를 수 없기 때문이다. 라스트 마일에서의 데이터를 가로채는 것은 동일한 대화를 포함하는 일련의 관련 패킷을 관찰할 더 큰 가능성을 가지며, 그 때문에 로컬 라우터는 패킷이 클라이언트 자신의 반송파 외부의 POP 에 도달할 때까지 로컬 라우터가 지정된 라우팅 표를 정상적으로 따르기 때문이다. 예를 들어 컴캐스트의 클라이언트는, 패킷이 컴캐스트의 도달 범위 및 클라이언트 서비스 영역을 넘어 지리적으로 이동할 때까지, 전적으로 컴캐스트 소유 네트워크를 사용하여 IP 패킷을 라우팅 체인까지 통과할 것이다.
동일한 2개의 IP 어드레스 사이에서 패킷의 연속이 충분히 오랜 시간 동안 발생한다면, 전체 대화를 단편적으로 재생성할 수 있다. 예를 들어, SMS 문자 메시지가 라스트 마일에서 동일한 네트워크에 대해 통과되었다면, 사이버 해적(630)은 IP 어드레스 및 포트 번호를 통해, 텍스트를 운반하는 다중 IP 패킷이 동일한 2개의 디바이스, 즉 휴대폰(32)과 노트북(35) 사이의 대화를 나타내는지를 식별할 수 있다. 따라서 계좌 번호와 패스워드가 서로 다른 메시지로 문자가 기재되거나 또는 많은 패킷에 대해 불완전하게 보급된 경우라도, 패킷 식별자의 일관성은 여전히 사이버 해적이 대화를 재구성하고 계정 정보를 도용할 수 있게 한다. 일단 계좌 정보가 도난당했다면, 이들은 해외 은행으로 돈을 이체하거나 또는 심지어 계좌 암호 및 보안 질문을, 즉 일시적으로 도용을 식별하는, 변경함으로써 계정 권한을 빼앗을 수 있다.
페이로드가 암호화 되더라도, IP 어드레스 및 포트 #를 포함하는 나머지 IP 패킷(670)은 암호화되지 않는다. 많은 수의 IP 패킷을 반복적으로 스니핑한 후, 충분한 계산 능력에 액세스할 수 있는 사이버 해적은 이들이 암호화 패스워드를 파괴할 때까지 잔인한 전단력에 의해 모든 조합을 체계적으로 시도할 수 있다. 일단 키가 파괴되었다면, 패킷 및 모든 후속 패킷이 해독되어 사이버 해적(630)에 의해 사용될 수 있다. "패스워드 추측"에 의한 로그인 패스워드를 해독시킬 확률은 아래에 기재된 패킷 스니핑이 사용자 및 계정 "프로파일링"과 결합되면 크게 향상된다. "중간 공격자(man in the middle attacks)"에서 통신 디바이스는 사이버 해적이 이들에 직접 액세스할 수 없기 때문에 일반적으로 포함되지 않는다.
포트 조사 - 디바이스에 침입하는 다른 방법은 많은 계층 4 포트를 심문하고 임의의 요청이 응답을 수신하는지의 여부를 확인하기 위해 그 IP 어드레스를 사용하는 것이다. 도 45에 도시된 바와 같이, 일단 사이버 해적(680)이 IP 어드레스 "CP"를 갖는 휴대폰(32)보다 패킷 스니핑 또는 다른 수단으로부터 식별하였다면, 사이버 해적(680)은 비 보안 또는 개방 포트, 서비스 및 유지 관리 포트, 또는 애플리케이션 백도어를 찾기 위해 휴대폰(32)상의 포트에 대해 일련의 심문을 시작한다. 해커의 심문 프로그램이 모든 포트 #를 체계적으로 순환할 수 있는 반면에, 공격은 일반적으로 핑을 위한 포트 # 7, FTP를 위한 포트 # 21, 텔넷 터미널 에뮬레이션을 위한 포트 # 23, 간단한 이메일을 위한 포트 # 25 등과 같이 악명 높은 취약 포트에 집중한다. 도시된 바와 같이, 패킷(680A, 680B, 680C 및 680D)을 연속적으로 송신함으로써, 사이버 해적(660)은 이 예에서는 요청(680D)이 발생한 휴대폰(32)으로부터 응답을 기다린다. 응답이 송신될 때마다, 해적은 표적 디바이스의 운영 체제에 대해 더 많은 것을 학습한다.
포트 심문 과정에서, 사이버 해적(630)은 메시지를 받기 위해 여기에서는 기호로 "PA"로 나열되었지만 개인적으로는 이들에게 추적할 수 없는 위장된 의사 어드레스를 사용할 수 있도록, 그 실제 신원을 노출하기를 원하지 않는다. 대안적으로, 사이버 범죄자가 도난당한 컴퓨터 및 계정을 사용할 수 있으므로, 다른 누군가가 표적 디바이스를 해킹하려고 시도하는 것처럼 보이며, 추적한다면, 조사자를 그들이 아닌 무고한 사람으로 되돌린다.
프로파일링 - 사용자 및 계정 프로파일링은 암호를 해독시키고, 계정을 식별하고, 및 자산을 결정하기 위해, 사이버 해적이 공개적으로 사용 가능한 정보를 사용하여 표적, 그 계정, 그 개인 기록에 대해 학습하는 프로세스이다. 일단 해커가 스니핑이나 다른 방법을 사용하여 표적의 IP 어드레스를 얻었다면, 디바이스의 계정의 DNS 서버를 찾기 위해 추적 루트 유틸리티가 사용될 수 있다. 그 후, 인터넷 상의 "Who is" 기능을 이용함으로써, 계정 소유자의 이름이 발견될 수 있다. 프로파일링에서, 사이버 범죄자는 인터넷을 검색하여 계정 소유자의 모든 사용 가능한 정보를 수집한다. 정보의 소스는 재산 증서, 자동차 등록, 결혼 및 이혼, 세금 유치권, 주차 위반 티켓, 교통 위반, 범죄 기록 등과 같은 공공 기록을 포함한다. 많은 경우에 있어서, 대학 및 전문 사회로부터의 웹 사이트는 집 어드레스, 이메일 어드레스, 전화번호, 및 개인의 생년월일을 포함한다. 페이스북, 링크드인, 트위터 및 기타와 같은 소셜 미디어 사이트를 조사함으로써, 사이버 범죄자는 창피한 사건, 가족의 비밀, 및 개인적인 적을 포함하여, 사진 및 비디오 파일 뿐만 아니라, 가족 및 친구, 애완동물의 이름, 이전 집 어드레스, 동급생, 다른 사람의 주요 사건, 사진 등 중요한 정보를 수집할 수 있다.
사이버 해적의 다음 단계는 이 프로필을 사용하여, 그 프로필에 기초하는 사용자의 암호를 "추측"하여, 표적 디바이스 및 동일한 개인의 다른 계정을 해킹하는 것이다. 일단 사이버 범죄자가 하나의 디바이스 패스워드를 해독하였다면, 사람들은 암기하기 쉽도록 암호를 재사용하는 경향이 있기 때문에, 이들이 다른 계정으로 침입할 가능성이 크다. 그 시점에서, 사람의 신원을 훔치고, 돈을 송금하고, 이들을 경찰 수사의 대상으로 삼아, 그 모든 재산을 훔쳐 다른 사람의 생명을 근본적으로 파괴하는 것이 가능하다. 예를 들어, 도난당한 계정으로부터 긴 암호 목록을 모으는 본 발명의 서두에 기재된 바와 같이, 사이버 범죄자는 동일한 패스워드와 로그인 정보를 사용하여 콘서트 및 스포츠 이벤트에 수백만 달러의 프리미엄 티켓을 불법적으로 구매하기 위해 동일한 패스워드를 사용했다.
사기범(imposter) - 사이버 해적이 누군가를 사칭하였을 때, 이들은 위임자 또는 디바이스인 것처럼 위장하여 통신 및 파일에 액세스하기 위해 불법적으로 획득한 사이버 보안 자격 증명을 사용하지 않으며, 사이버 해적은 "위조범"으로서 행동한다. 사이버 공격의 사기범 타입은, 사이버 범죄자가 피해자의 계좌를 빼앗아 개인의 계정으로의 충분한 정보 또는 액세스를 갖고, 자신을 대신하여 메시지를 보내고 또한 해킹된 계정의 소유자로서 이들을 잘못 설명할 때 발생한다. 최근에, 예를 들어 발명가 중 한 명의 개인 친구가 "라인" 개인 메신저 계정을 해킹당했다. 계좌를 인계받은 후, 사이버 범죄자는 "그녀가 자동차 사고로 긴급 대부금으로 돈을 필요로 했다"고 허위 진술하고 돈을 어디로 보내라는 지령을 보내는 것을 포함하는 메시지를 그녀의 친구에게 전했다. 계정이 해킹당했다는 사실을 알지 못해도 그녀의 친구의 요청이 실제라고 생각되어 재무 구조로 돌진했다. 의심을 피하기 위해 각 친구에게 보낸 요청은 1,000 달러 이하였다. 다행히 돈을 송금하기 직전에, 그녀의 친구 중 한 명이 그녀에게 배선 정보를 다시 확인하라고 전화를 걸었고 사기가 밝혀졌다. 전화가 없었다면, 그 누구도 요청이 사기꾼으로부터 왔음을 전혀 알지 못했을 것이며, 또한 라인 계정 소유자는 전신 송금이 보내졌거나 요청되었다는 것을 결코 알지 못했을 것이다.
다른 형태의 허위 진술은 디바이스가 보안 권한을 부여 받고 서버 또는 다른 네트워크 연결된 디바이스와 정보를 교환할 수 있을 때 발생하며, 또한 어떻게든 사이버 해적 디바이스가 허가된 서버로 위장하고, 그에 따라 어떤 방법으로 피해자의 디바이스가 서버가 사기꾼이라는 것을 인식하지 못하는 해적 서버에 대한 파일 및 정보에 기꺼이 항복할 때 발생한다. 이 방법은 백업 클라우드가 사기꾼이라는 점을 제외하고는, 유명 인사가 아이클라우드로 개인 사진 파일을 백업하도록 유도하는 데 사용되었다.
사기 행위의 다른 형태는 사람의 전화나 열린 브라우저에 물리적으로 액세스하는 사람이 이메일 송신, 전화 응답, 다른 사람의 계정이나 디바이스에서 문자 메시지 보내기와 같은 사기꾼 처리를 수행할 때 발생한다. 수신 당사자는 이들이 알려진 디바이스 또는 계정에 연결되어 있어 해당 디바이스 또는 계정을 운영하는 사람이 소유자임을 전제로 한다. 사기꾼은 페이스북의 난처한 댓글을 게시하는 친구와 같은 장난이거나 또는 누군가의 배우자가 개인 전화에 응답하거나 개인 성격의 개인 문자 메시지를 가로채는 보다 개인적인 성격을 띠고 있을 수 있다. 무단 액세스의 결과는 질투심, 이혼, 및 복수의 법적 절차로 나타날 수 있다. 사무실이나 카페에서 감시되지 않은 상태로 잠시 디바이스를 남기면, 예를 들어 화장실에 가는 것처럼, "감염"이라는 제목의 다음 섹션에서 설명하는 바와 같이, 사기꾼이 개인 정보 또는 회사 정보에 빠르게 액세스하거나, 허가되지 않은 이메일을 송신하거나, 파일을 전송하거나, 멜웨어의 일부 형태를 디바이스에 다운로드할 다른 위험이 있다.
사기꾼 기반 사이버 공격은 디바이스가 도난당한 경우에도 중요하다. 이러한 경우에, 디바이스가 로그아웃 되더라도, 도둑은 로그인 코드를 파괴하는 데 충분한 시간을 할애한다. 컴퓨터에 있는 도난당한 디바이스를 찾아내고 사이버 해적이 디바이스에 처음 로그온 할 때 컴퓨터 파일을 지우는 "내 컴퓨터 찾기"기능은, 기술에 익숙한 범죄자들이 현재 셀룰러 또는 WiFi 연결이 없는 디바이스만 활성화한다는 것을 알고 있기 때문에 더 이상 동작하지 않는다. 이 위험은 특히 패스 라인 보안이 간단한 4자리 개인 ID 번호 또는 PIN 인 휴대폰의 경우에 특히 크다. 9999 가지 가능한 조합만 있기 때문에 PIN을 깨는 것은 시간 문제이다.
디바이스를 안전하게 유지하기 위한 주요한 문제는 가짜에 대한 액세스를 방지하는 것이다. 가짜를 방지하는 것은 일정한 간격으로 사용자의 신원을 인증하고 필요한 정보와 권한 만 액세스할 수 있는 권한이 있는지 확인하는 강력한 수단을 요구한다. 디바이스 보안은 종종 체인에서 가장 약한 링크이다. 일단 디바이스의 보안이 무너졌다면, 강력한 네트워크 보안에 대한 고려할 가치가 없다.
패킷 도용 - 패킷 도용은 네트워크를 통한 정상적인 패킷 흐름이 적대적인 디바이스를 통해 우회되는 사이버 공격을 포함한다. 이 예는 도 46에 도시되어 있으며, 여기서 IP 어드레스 "NB" 및 애드혹 포트 # 9999를 갖는 노트북(35)은 IP 어드레스 "CP"를 갖는 휴대폰(도시되지 않음)에 파일을 IP 패킷(670)으로서 송신한다. 정상적인 상황 하에서, IP 패킷(670)은 노트북(35)으로부터 WiFi 라우터(26)로, 그리고 고속 유선 연결(24)에 의해 클라우드 내의 서버(22A)에 의해 연결된 라우터(27)로 루트를 횡단한다.
그러나 라우터(27)의 무결성이 사이버 해적(630)으로부터의 사이버 공격에 의해 손상되었다면, IP 패킷(670)은 오직 IP 어드레스 및 포트 # 만 도시된 요약된 형태로 도시된 명확함을 위해 IP 패킷(686A)으로 재기입될 수 있다. IP 패키지를 전환하기 위해, 목적지 어드레스 및 포트 번호는 휴대폰으로부터 사이버 해적 디바이스(630)의 것으로, 특히 IP 어드레스 "PA" 및 포트 # 20000으로 변경된다. 그 후, 사이버 해적 디바이스(630)는 이것이 IP 패킷의 페이로드의 어드레스로부터 필요로 하는 어떤 정보를 얻고, 가능하면 IP 패킷의 페이로드의 콘텐트를 변경한다. 사기성 페이로드는 임의의 많은 사기 범죄를 저지르고, 정보를 수집하고, 휴대폰에 멜웨어를 다운로드하는 데 사용될 수 있으며, 이 문서는 이후 "감염"항목에서 설명된다.
도용된 패킷, IP 패킷(686B)은 패킷이 유선 연결 대신에 유선 연결(685B)에 대해 이동하는 것을 제외하고는, 포트 # 20 에서 휴대폰 IP 어드레스 "CP"로 송신된 포트 # 9999로부터 소스 IP 어드레스 "NB"를 갖는 본래의 IP 패킷(670)처럼 나타나도록 새로 장착된다. 대안적으로, 도용된 IP 패킷은 타협된 라우터(27)로 되돌아가고 그 후 유선 연결(24)을 통해 클라우드로 송신될 수 있다. 패킷 도용의 범죄 이득을 최대화하기 위해, 사이버 해적(630)은 패킷 도용에서 그 신원을 확인하고, 그 이유로 IP 패킷의 실제 라우팅을 위장하므로, 심지어 계층 3 ICMP 기능인 "추적 루트" 조차도 통신의 실제 경로를 식별하는 데 어려움을 가질 것이다. 그러나 도용이 패킷 라우팅에서 눈에 띄는 지연을 추가한다면, 비정상적인 대기 시간은 네트워크 운영자에 의해 조사를 신속하게 처리할 수 있다.
사이버 감염 - 사이버 습의 가장 교활한 범주 중 하나는 정보를 수집하고, 사기를 치고, 트래픽을 재지향시키고, 다른 디바이스를 감염시키고, 시스템을 손상시키거나 차단하고, 또는 서비스 실패의 부정을 유발시키도록 이에 의해 표적 디바이스 또는 디바이스 내에 멜웨어를 설치하는 "사이버 감염"이다. 사이버 감염은 이메일, 파일, 웹 사이트, 시스템 확장, 애플리케이션 또는 네트워크를 통해 확산될 수 있다. 도 42의 표에 설명된 "스파이웨어"라는 일반 등급의 멜웨어는 모든 종류의 처리 정보를 수집하여 이를 사이버 해적에 전달한다. "피싱"의 경우에, 친숙한 로그인 페이지처럼 보이는 wen 페이지나 애플리케이션 쉘이 계정 로그인 또는 개인 정보에 대한 정보를 묻고 사이버 해적에 정보를 전달한다. 다른 멜웨어 감염은 하드웨어를 제어할 수 있으며, 예를 들어 전술한 패킷 도용을 실행하도록 라우터를 제어한다. 이들 경우에 있어서, 사이버 해적은 그 자신의 목적을 위해 정보를 얻거나 이익을 제어하려고 한다.
바이러스, 웜, 및 트로이 목마를 포함하는 다른 등급의 사이버-감염은 중요한 파일을 덮어 쓰거나 또는 무의미한 기능을 반복적으로 실행하여, 디바이스가 정상적인 동작을 수행하는 것을 방지하도록 설계되었다. 기본적으로, 서비스를 거부하거나, 성능을 저하시키거나 디바이스를 완전히 죽인다. 이들 악의적인 감염은 본질적으로 파괴적이며, 또한 경쟁 업체의 비즈니스가 정상적으로 동작하지 못하게 하거나, 또는 해커가 가능한지 보기를 원한다면 단순히 재미로 동기를 부여하기 위해 보복적인 목적으로 사용된다.
감시 - 침입 및 감시는 사이버 범죄를 넘어선다. 이러한 경우, 개인 탐정이나 지인은 디바이스나 프로그램을 표적의 개인 디바이스에 설치하여 음성 대화, 데이터 교환, 및 위치를 모니터링하도록 고용되거나 강제된다. 형사가 이를 아는 주체 없이 표적으로의 일시적인 액세스를 얻어야 하기 때문에 잡힐 위험이 더 크다. 예를 들어, 휴대폰의 네트워크 액세스 권한을 복사할 수 있는 SIM 카드가 사용될 수 있지만, 그러나 동시에 표적의 통화 및 데이터 트래픽을 모니터링하는 사이버 범죄자에게 정보를 전송할 수 있다.
감시의 다른 형태는 비밀리에 비디오 카메라를 사용하여 카지노에 있는 것과 마찬가지로 사람의 모든 행동과 전화를 모니터링한다. 비디오 모니터링을 통해, 디바이스의 패스워드 또는 PIN은 로그인 과정 중 사용자의 키 입력을 관찰함으로써 간단하게 학습될 수 있다. 카메라가 제 위치에 충분하다면, 결국 로그인 프로세스가 기록된다. 의심의 여지없이 카메라 네트워크에 액세스하기 위해, 사이버 해적은 건물, 상점 또는 거리의 기존 카메라 감시 시스템을 해킹하고 다른 사람의 네트워크에 액세스하여 의심하지 않는 희생자의 행동을 모니터링할 수 있다. 비디오 감시와 패킷 스니핑의 조합은, 이후에 사이버 공격을 시작하기 위해 설정된 보다 포괄적인 데이터 세트가 제공된다.
해적 관리(침입)-사이버 해적들이 정보를 얻기 위해 할 수 있는 다른 하나의 수단은 해킹하여 디바이스, 서버 또는 네트워크의 시스템 관리 권한에 대한 액세스 권한을 얻는 것이다. 따라서 시스템 관리자의 로그인을 해킹하여 하나의 사용자의 계정에 무단으로 액세스하기보다는, 시스템 사용에 대한 지식이 없으면 사이버 해적에 대해 사용 가능한 액세스 및 권한이 부여될 수 있다. 시스템 관리자가 시스템의 경찰 역할을 하기 때문에, 본질적으로 그 범죄 행위를 포착 할 사람은 아무도 없으며, 본질적으로 부패한 행정부가 있는 시스템이나 네트워크에서는 경찰을 경찰할 수 있는 사람이 아무도 없다.
결론 - 인터넷, 패킷 교환형 네트워크 및 7 계층 오픈 소스 이니셔티브 네트워크 모델의 거의 보편적인 채택으로 인한 편재성과 상호 운용성은 지난 20년 동안 전세계 통신이 비할 수 없을 정도로 확장되고 스마트폰으로부터 태블릿, 컴퓨터, 스마트 TV, 자동차, 가전제품 및 전구에 이르기까지 다양한 범위의 디바이스를 제공했다. 이더넷, 셀룰러, WiFi 및 케이블 TV 연결을 위한 기반으로 인터넷 프로토콜 또는 IP의 전 세계적인 채택은 통일된 통신뿐만 아니라 해커 및 사이버 범죄자가 가능한 많은 디바이스 및 시스템에 침입하려는 도전을 상당히 간단하게 했다. 현재의 통신 네트워크를 공격할 수 있는 많은 소프트웨어 및 하드웨어 방법을 감안한다면, 단일의 방어로서 단일 보안 방법으로는 충분하지 않다. 대신에 모든 디바이스, 최종 링크, 로컬 텔코/네트워크 및 클라우드 네트워크를 보호하여 정교한 사이버 공격에 대한 그 보호를 보장하기 위해 체계적인 접근법이 요망되고 있다. 활용되는 방법은 QOS, 네트워크 대기 시간, 비디오 또는 음질을 희생시키지 않으면서 본질적인 사이버 보안 및 사이버 프라이버시를 제공해야만 한다. 암호화는 보안 통신 및 데이터 저장 분야에서 차세대 개발의 중요한 요소로 남아 있어야 하지만, 네트워크의 보안은 암호화 방법론에만 의존해서는 안 된다.
본 발명에 따라, 데이터(텍스트, 오디오, 비디오, 그래픽 및 모든 다른 종류의 디지털 정보 또는 파일을 포함하도록 광범위하게 정의된)는 보안 동적 통신 네트워크 및 프로토콜(SDNP) 네트워크 또는 "클라우드"를 통해 전송된다. 상기 "SDNP " 클라우드는 전 세계 어디에나 위치되는 서버 또는 다른 타입의 컴퓨터 또는 디지털 장비(통칭하여 여기에서는 "서버"로서 지칭됨) 상에 개별적으로 호스트된 "미디어 노드"로도 지칭되는 다수의 "노드"를 포함한다. 2개 또는 그 이상의 노드가 단일 서버에 위치되는 것이 가능하다. 전형적으로, 상기 데이터는 광섬유 케이블을 통해 운반되는 광에 의해, 라디오 또는 마이크로파 스펙트럼에서 라디오 전파(radio wave)에 의해, 구리선 또는 동축 케이블 상에 전도된 전기 신호에 의해, 또는 위성 통신에 의해 미디어 노드 사이에서 전송되지만, 그러나 본 발명은 디지털 데이터가 한 지점으로부터 다른 지점으로 전송되는 것을 광범위하게 의미한다. SDNP 네트워크는 SDNP 클라우드와 휴대폰, 태블릿, 노트북 및 데스크탑 컴퓨터, 모바일 소비자 전자 기기 및 인터넷 등의 디바이스와 같은 클라이언트 디바이스 사이의 "라스트 마일" 링크뿐만 아니라, 사물 인터넷 디바이스 및 전자기기, 자동차, 및 다른 차량뿐만 아니라 SDNP 클라우드를 포함한다. 또한, 라스트 마일 통신은 휴대폰 타워, 가정용 케이블 또는 광섬유, 및 공공 WiFi 라우터를 포함한다.
SDNP 클라우드의 미디어 노드 사이 전송 시, 데이터는 고정된 또는 가변 길이일 수 있는 디지털 비트의 개별 스트링인 "패킷" 형태이며, 또한 데이터는 이하의 기술, 즉 스크램블링(scrambling), 암호화 또는 분할(splitting) 또는 그 역프로세스, 언스크램블링(unscrambling), 해독 및 혼합[주: 여기에 사용되는 바와 같이, 문맥이 달리 표시하지 않는 한, "또는"이라는 단어는 결합적인(및/또는) 의미로 사용된다]을 사용함으로써 위장된다.
스크램블링은 데이터 패킷 내의 데이터를 재정렬하는 것을 수반하며; 예를 들어, 패킷에서 그 순서로 나타나는 데이터 세그먼트 A, B 및 C는 시컨스 C, A 및 B로 재배열된다. 스크램블링 동작의 반대는 "언스크램블링"으로서 지칭되고, 위의 예에서 A, B 및 C가 처음 등장한 순서에 대한 패킷 내에 데이터를 재배치하는 단계를 수반한다. 데이터 패킷을 언스크램블한 후 스크램블하는 조합된 동작은 "재스크램블링(re-scrambling)"으로서 지칭된다. 이미 스크램블된 패킷을 재스크램블하는 경우, 상기 패킷은 이전의 스크램블링 동작과 동일한 또는 상이한 방식으로 스크램블될 수 있다.
두 번째 동작인 "암호화"는 패킷의 데이터를 암호문(ciphertext)이라고 지칭되는 형식으로 인코딩하는 것으로, 이는 송신자 및 다른 인증된 사람, 그리고 그렇게 하기 위해 역동작-"해독"-을 수행해야만 하는 사람에 의해서만 이해될 수 있다. 암호문 데이터 패킷을 해독과 이를 다시 암호화하는 조합된 동작은, 전형적으로, 그러나 이를 이미 암호화하는 데 사용된 방법과는 상이한 방법을 사용하는 것이 필수적이지는 않게, 여기에서는 "재암호화(re-encryption)"라고 지칭된다.
세 번째 동작인 "분할(splitting)"은 이름에서 알 수 있듯이 패킷을 2개 또는 그 이상의 작은 패킷으로 분할하는 것을 의미한다. 역동작인 "혼합(mixing)"은 2개 또는 그 이상의 분할 패킷을 다시 단일 패킷으로 재조합하는 것으로서 정의된다. 이전에 분리되고 그 후 혼합된 패킷을 분할하는 것은 이전의 분할 동작과 동일하거나 상이할 수 있다. 조작 순서는 역전 가능하며, 이에 따라 혼합에 의해 분할이 실행되지 않을 수 있으며, 또한 반대로 다중 입력을 하나의 출력으로 혼합하는 것은 분할하여 구성요소를 복구하기 위해 분할에 의해 이루어지지 않을 수 있다(주: 스크램블링 및 언스크램블링, 암호화 및 해독, 그리고 분할 및 혼합은 역프로세스이기 때문에, 이를 수행하는 데 사용된 알고리즘 또는 방법에 대한 지식이 그 반대를 수행하기 위해 필요하다. 따라서 여기에서 특별한 스크램블링, 암호화, 또는 분할 알고리즘과 관련하여, 그 알고리즘에 대한 지식이 역프로세스를 수행하는 것을 허용한다는 인식해야 한다.)
본 발명에 따라, SDNP 클라우드를 통과하는 데이터 패킷은 스크램블되거나 또는 암호화되며, 또는 분할과의 조합 시 이들 동작 중 하나 또는 둘 모두를 거친다. 또한, 패킷을 해독하기가 더 어렵게 하거나 또는 패킷을 필요로 하는 길이에 맞추기 위해, 패킷에 "정크(junk)"(즉, 의미 없는) 데이터가 추가될 수 있다. 더욱이, 패킷은 파싱될 수 있으며, 즉 별개의 단편으로 분리될 수 있다. 컴퓨팅 언어에 있어서, 파싱한다는 것은 컴퓨터 언어 구문, 컴퓨터 명령, 또는 데이터 파일을 컴퓨터에 유용하게 사용할 수 있는 부분으로 나누는 것이다. 파싱은 명령 또는 데이터 패킷의 목적을 모호하게 하거나 또는 지정된 데이터 길이를 갖는 데이터 패킷으로 데이터를 배열하는 데 사용될 수도 있다.
데이터 패킷의 포맷이 인터넷 프로토콜에 따르더라도, SDNP 클라우드 내에서, 미디어 노드의 어드레스는 표준 인터넷 어드레스가 아니며, 즉 이들은 임의의 인터넷 DNS 서버에 의해 식별될 수 없다. 따라서 미디어 노드가 인터넷을 통해 데이터 패킷을 기술적으로 수신할 수는 있어도, 상기 미디어 노드는 어드레스를 인식하지 못하거나 질의에 응답하지 않는다. 더욱이, 인터넷 사용자가 미디어 노드에 접촉하더라도, 그들은 미디어 노드 내의 데이터가 SDNP 미디어 노드로서 필요한 식별 자격 증명이 없는 사기꾼으로 미디어 노드를 인식할 수 있기 때문에, 미디어 노드 내부의 데이터에 액세스하거나 검사할 수 없다. 특히, 미디어 노드가 SDNP 네임 서버 또는 이와 그 동등한 기능의 적격 서버에서 실행중인 유효한 SDNP 노드로 등록되지 않는 한, 그 노드로부터 다른 SDNP 미디어 노드로 송신된 데이터 패킷은 무시되고 폐기될 것이다. 유사한 방식으로, SDNP 네임 서버에 등록된 클라이언트만 SDNP 미디어 노드에 접촉할 수 있다. 등록되지 않은 서버와 마찬가지로, 등록된 SDNP 클라이언트 이외의 소스로부터 수신된 데이터 패킷은 무시되어 즉시 폐기될 것이다.
"단일 루트"로서 지칭된 비교적 간단한 실시예에 있어서, 데이터 패킷은 SDNP 클라우드에서 일련의 미디어 노드를 통해 단일 경로를 횡단하며, 이는 이것이 클라우드에 들어가는 미디어 노드에서 스크램블되고, 또한 패킷이 클라우드를 나가는 미디어 노드에서 언스크램블된다(이들 두 노드는 "게이트웨이 노드" 또는 "게이트웨이 미디어 노드"로서 지칭된다). 약간 더 복잡한 실시예에 있어서, 패킷은 이전의 미디어 노드에서 사용된 바와는 상이한 스크램블링 방법을 사용하여 각 미디어 노드에서 재스크램블된다. 다른 실시예에 있어서, 패킷은 이것이 클라우드에 들어가는 게이트웨이 노드에서 암호화되고 그리고 이것이 클라우드를 나가는 게이트웨이 노드에서 해독되며, 또한 상기 패킷은 클라우드에서 통과하는 각 미디어 노드에서 재암호화될 수 있다. 주어진 노드가 패킷을 스크램블하거나 암호화할 때마다 동일한 알고리즘을 사용하기 때문에, 이 실시예는 "정적"스크램블링 및 암호화로서 기재된다.
패킷이 2개 또는 그 이상의 동작을 받는 경우, 예를 들어 스크램블되고 암호화되는 경우, 역동작은 바람직하게는 동작 자체의 반대 순서로, 즉 역순으로 수행된다. 예를 들어, 패킷이 스크램블되고 그 후 미디어 노드를 떠나기 전에 암호화되었다면, 이는 먼저 해독되고 그 후 이것이 이하의 미디어 노드에 도착하였을 때 언스크램블된다. 상기 패킷은 미디어 노드 내에 있는 동안에만 그 본래의 형태로 재생성된다. 패킷이 미디어 노드 사이로 전송되는 동안, 이는 스크램블되거나, 분할되거나, 혼합되거나, 또는 암호화된다.
"다중 루트" 데이터 전송으로서 지칭되는 다른 실시예에 있어서, 패킷은 게이트웨이 노드에서 분리되고, 또한 결과적인 다중 패킷은 일련의 "병렬" 경로로 클라우드를 횡단하며, 게이트웨이 노드를 제외하고 그 어떤 경로도 다른 경로와 미디어 노드를 공유하지 않는다. 다중 패킷은 통상적으로 출구 게이트웨이 노드에서 본래의 패킷을 재생성하도록 혼합된다. 따라서 해커가 단일 패킷의 의미를 이해할 수 있더라도, 그들은 전체 메시지의 일부만 가질 것이다. 상기 패킷은 이것이 분할되기 전에 또는 후에 게이트웨이 노드에서 스크램블되고 암호화될 수도 있으며, 상기 다중 패킷은 그들이 통과하는 각각의 미디어 노드에서 재스크램블되거나 재암호화될 수 있다.
다른 실시예에 있어서, 패킷은 SDNP 클라우드에서 오직 단일 경로 또는 일련의 병렬 경로를 통해 이동하지 않으며, 오히려 패킷은 다수의 경로를 통해 이동할 수 있으며, 이들 중 다수는 서로 교차한다. 이 실시예에 가능한 경로의 그림이 메시(mesh)를 닮았기 때문에, 이는 "메시형 전송(meshed transport)"으로 지칭된다. 전술한 실시예에서처럼, 패킷은 이들이 SDNP 클라우드에서 개별적인 미디어 노드를 통과할 때, 스크램블되고, 암호화되고, 그리고 분할되거나 또는 혼합될 수 있다.
SDNP 네트워크를 통한 패킷의 경로는, 시그널링 기능에 의해 결정되며, 이는 전용 시그널링 서버 상에서 동작하는 별도의 시그널링 노드에 의해 미디어 노드 자체의 세그먼트 또는 바람직하게는 "이중 채널"로 또는 "3중 채널" 실시예로 수행될 수 있다. 상기 시그널링 기능은 네트워크의 조건(예를 들어, 전파 지연) 및 통화의 우선순위와 긴박성에 기초하여 이것이 전송 클라이언트 디바이스(예를 들어, 휴대폰)를 떠날 때 각각의 패킷의 루트를 결정하고, 이것이 패킷을 수신하는 루트를 따라 각각의 미디어 노드를 알려주며, 또한 이를 전송할 노드를 명령한다. 각각의 패킷은 태그에 의해 식별되며, 상기 시그널링 기능은 각각의 미디어 노드가 이것이 송신하는 각 미디어 노드에 어떤 태그를 적용할지를 명령한다. 일 실시예에 있어서, 상기 데이터 태그는 SDNP 헤더 또는 서브 헤더에, 서브패킷을 식별하는 데 사용된 각각의 데이터 서브패킷에 첨부된 데이터 필드를 포함한다. 각각의 서브패킷은 패킷에서 지정한 데이터 "슬롯"에 저장된 하나 또는 다중 소스로부터 데이터 세그먼트를 포함할 수 있다. 임의의 2개의 미디어 노드 사이로 데이터 전송 중 하나의 큰 데이터 패킷 내에 다중 서브패킷이 존재할 수 있다.
라우팅 기능은 분할 및 혼합 기능과 정렬되는데, 그 이유는 일단 패킷이 분할되면, 분할된 각각의 서브패킷의 각각의 경로가 결정되어야 하고, 서브패킷이 재조합되는 노드가 그들을 혼합하도록 명령을 받아야만 하기 때문이다. 패킷은 다중 루트 실시예에서럼 일단 분할되고 나서 혼합될 수 있으며, 또는 SDNP 네트워크를 통해 게이트웨이 노드를 나감에 따라 여러 번 분할되고 혼합될 수 있다. 어떤 노드에서 패킷이 분할될 것인지, 얼마나 많은 서브패킷이 분할될 것인지, 서브패킷의 각 경로 및 본래의 패킷을 재생성하기 위해 어떤 노드에서 서브패킷이 혼합될 것인지의 결정은 이것이 별도의 시그널링 서버에 의해 수행되는지의 여부와는 관계없이 모두 시그널링 기능의 제어 하에 있다. 분할 알고리즘은 통신에서 어느 데이터 세그먼트가 각각의 서브패킷에 포함될 것인지, 그리고 서브패킷의 데이터 세그먼트의 순서 및 위치를 지정할 수 있다. 혼합 알고리즘은 본래 패킷을 재생성하기 위해 서브패킷이 혼합된 노드에서 이 프로세스를 역으로 수행한다. 물론, 시그널링 기능에 의해 그렇게 지시되었다면, 그 노드는 또한 분할 프로세스가 발생하는 시간 또는 상태에 대응하는 상이한 분할 알고리즘에 따라 패킷을 다시 분할할 수 있다.
미디어 노드가 시그널링 기능에 의해, 네트워크를 통해 "다음 홉(hop)"상의 특별한 목적지 미디어 노드에 복수의 패킷을 전송하도록 명령 받았을 때, 이들 패킷은 분할 패킷(서브패킷)인지, 또는 이들이 상이한 메시지에 속하는지, 미디어 노드는 특히 다중 서브패킷이 그들의 다음 홉에 대한 공통 목적지 미디어 노드를 공유할 때(단일 어드레스에 대해 의도된 글자 그룹을 박스 내에 두고 상기 박스를 어드레스로 보내는 우체국과 유사하게), 패킷을 단일의 큰 패킷으로 결합할 수 있다.
본 발명의 "동적"실시예에 있어서, SDNP 클라우드의 개별적인 미디어 노드는 이들을 통과하는 연속적인 패킷 상에서 동일한 스크램블링, 암호화, 또는 분할 알고리즘 또는 방법을 사용할 수 없다. 예를 들어, 주어진 미디어 노드는 특별한 스크램블링, 암호화 또는 분할 알고리즘을 사용하여 하나의 패킷을 스크램블, 암호화 또는 분할하고, 그 후 다른 스크램블링, 암호화, 또는 분할 알고리즘을 사용하여 다음 패킷을 스크램블, 암호화, 또는 분할할 수 있다. "동적" 동작은 해커가 당면할 수 있는 어려움을 크게 증가시키는데, 그 이유는 그들이 패킷의 의미를 이해할 수 있는 짧은 시간(예를 들어, 100 msec)만 가지고 있기 때문이며, 또한 그들이 성공했다고 해도, 그 지식의 유용성은 수명이 짧을 것이다.
동적 실시예에 있어서, 각각의 미디어 노드는 "DMZ 서버"로서 알려진 것과 관련이 있으며, 이는 데이터 전송 포트로부터 격리된 노드의 부분으로서 관찰될 수 있으며, 또한 이는 미디어 노드가 나가는 패킷에 적용할 수 있는 가능한 스크램블링, 암호화 및 분할 알고리즘의 목록 또는 표["선택기(selector)"]를 갖고 있다. 상기 선택기는 "공유된 비밀"로서 지칭되는 정보 본문의 일부인데, 그 이유는 정보는 미디어 노드에도 알려지지 않았으며, 또한 모든 DMZ 서버는 지정된 시점에 동일한 선택기를 사용하기 때문이다.
미디어 노드가 스크램블된 패킷을 수신할 때, 동적 실시예에 있어서, 이는 또한 패킷을 언스크램블하는 데 어떤 알고리즘이 사용될 것인지를 수신 노드에 표시하는 데 사용되는 "시드(seed)"를 수신한다. 시드는 그 자체로 의미가 없지만 그러나 패킷이 종래의 미디어 노드에 의해 스크램블된 시간과 같이 끊임없이 변화하는 상태에 기초하고 있는 위장된 수치이다. 상기 종래의 노드가 패킷을 스크램블했을 때, 그 관련 DMZ 서버는 상태에 기초하여 시드를 생성했다. 물론, 그 상태는 패킷을 스크램블하는 데 사용된 알고리즘의 선택 시 그 관련 DMZ 서버에 의해 사용되었으며, 이는 패킷을 어떻게 스크램블할지에 대한 명령의 형태로 송신 미디어 노드로 송신되었다. 따라서 상기 송신 노드는 패킷을 스크램블하는 방법에 관한 명령과 다음 미디어 노드로 송신될 시드를 모두 수신했다. DMZ 서버 내에서 동작하는 시드 생성기는 프로세스가 실행될 때의 상태에 기초한 알고리즘을 사용하여 시드를 생성하였다. 시드 생성기 및 그 알고리즘이 미디어 노드의 공유된 비밀 중 일부이더라도, 생성된 시드는 수치 시드가 의미를 갖지 않는 알고리즘에 액세스하지 않기 때문에 비밀이 아니다.
따라서 패킷의 루트 상의 다음 미디어 노트는 스크램블된 패킷 및 상기 패킷과 관련된 상태로부터 유도된 시드(예를 들어, 이것이 스크램블된 시간)를 수신한다. 상기 시드는 패킷 자체에 포함될 수 있거나, 또는 패킷과 동일한 루트를 따라 또는 시그널링 서버를 통하는 것과 같은 일부 다른 경로를 통해 패킷 전에 수신 노드로 전송될 수 있다.
이것이 시트를 수신하는 방법과는 관계없이, 상기 수신 노드는 시드를 DMZ 서버로 송신한다. 그 DMZ 서버가 공유 비밀의 일부이며 따라서 송신 노드의 DMZ 서버에서의 선택기와 동일한 스크램블링 알고리즘의 선택기 또는 표를 가지고 있기 때문에, 이는 패킷을 스크램블하는 데 사용되었던 알고리즘을 식별하기 위해 상기 시드를 사용할 수 있으며, 또한 패킷을 어떻게 언스크램블할지를 수신 노드에 명령할 수 있다. 따라서 상기 수신 노드는 그 언스크램블된 형태로 패킷을 재생성하며, 이에 따라 본래의 데이터를 복원한다. 전형적으로, 상기 패킷은 다른 노드로 전송되기 전에 다른 스크램블링 알고리즘에 따라 다시 스크램블될 것이다. 만일 그렇다면, 상기 수신 노드는 스크램블링 알고리즘 및 시드를 획득하기 위해 DMZ 서버와 협력하고, 프로세스는 반복된다.
따라서 패킷이 SDNP 네트워크를 통해 진행됨에 따라, 이는 각각의 노드에 의해 상이한 스크램블링 알고리즘에 따라 스크램블되며, 다음 노드가 패킷을 언스크램블링할 수 있게 하는 새로운 시드가 각 노드에서 생성된다.
본 발명의 대안적인 실시예에 있어서, 실제 상태(예를 들어, 시간)가 노드 사이에 전송될 수 있다(즉, 송신 노드는 수신 노드에 시드를 전송할 필요가 없다). 송신 및 수신 미디어 노드 모두와 관련된 DMZ 서버는 주어진 시점에서 동일한 알고리즘을 포함하는 숨겨진 번호 생성기(다시 말하면, 공유된 비밀의 일부)를 포함한다. 송신 노드와 관련된 DMZ 서버는, 숨겨진 번호와 숨겨진 번호를 발생시켜 가능한 스크램블링 알고리즘의 선택자 또는 표로부터 스크램블 알고리즘을 결정하기 위해, 상태를 사용한다. 전송 노드는 상태를 수신 노드로 전송한다. 시드와 달리, 숨겨진 번호는 네트워크를 통해 절대 전달되지 않지만, 그러나 미디어 노드와 그 DMZ 서버 사이에는 독점적인 사적 통신이 유지된다. 수신 미디어 노드가 들어오는 데이터 패킷의 상태를 수신하였을 때, 숨겨진 번호 생성기 및 그 관련 DMZ 서버는 동일한 숨겨진 번호를 발생시키기 위해 상태를 사용하며, 이는 그 후 패킷의 언스크램블링에 사용될 알고리즘을 식별하기 위해 선택기 또는 표에 사용된다. 상기 상태는 패킷에 포함될 수 있거나 또는 패킷 전에 또는 일부 다른 경로를 통해 송신 노드로부터 수신 노드로 전송될 수 있다.
동적 암호화 및 분할에 사용된 기술은 동적 스크램블링에서 사용된 기술과 유사하지만, 그러나 동적 암호화에서는 시드 대신에 "키"가 사용된다. DMZ 서버에 의해 보유된 공유 비밀은 암호화 및 분할 알고리즘 및 키 생성기의 선택기 또는 표를 포함한다. 대칭 키 암호화의 경우, 송신 노드는 패킷을 암호화하는 데 사용된 알고리즘을 식별하고 이에 따라 파일을 해독하기 위해, 수신 노드의 DMZ 서버에 의해 사용된 수신 미디어 노드에 키를 전송한다. 비대칭 키 암호화의 경우에, 정보를 요청하는 미디어 노드, 즉 수신 노드는 먼저 송신될 데이터 패킷을 포함하는 노드에 암호화 키를 보낸다. 그 후, 송신 미디어 노드는 그 암호화 키에 따라 데이터를 암호화한다. 암호화 키를 생성하는 수신 미디어 노드만이 대응하는 해독 키, 및 암호화 키를 사용하여 생성된 암호문을 해독하는 능력을 보유한다. 중요하게도, 비대칭 암호화에서, 암호화를 위해 사용되는 암호화 키에 대한 액세스는 데이터 패킷을 해독하는 방법에 대한 임의의 정보를 제공하지 않는다.
분할의 경우, 패킷이 분리된 미디어 노드는 결과적인 서브패킷이 혼합될 미디어 노드에 시드를 전송하고, 또한 혼합 노드와 관련된 DMZ 서버는 분할 알고리즘 및 이에 따라 서브패킷을 혼합 시 사용될 알고리즘을 식별하기 위해 그 시드를 사용한다.
전술한 바와 같이, 이중 또는 3중 채널 실시예에 있어서, 시그널링 기능은 시그널링 서버로서 알려진 별도의 서버 그룹에서 동작하는 시그널링 노드에 의해 수행된다. 이러한 실시예에 있어서, 시드 및 키는 송신 미디어 노드로부터 수신 미디어 노드로 직접 송신하는 대신에 시그널링 서버를 통해 전송될 수 있다. 따라서 송신 미디어 노드는 시그널링 서버에 시드 또는 키를 송신할 수 있고, 상기 시그널링 서버는 상기 시드 또는 키를 수신 미디어 노드에 포워딩할 수 있다. 전술한 바와 같이, 시그널링 서버는 패킷의 경로를 설계하는 역할을 하므로, 시그널링 서버는 각 패킷이 지향되는 다음 미디어 노드를 알고 있다.
해커가 되는 것을 더 어렵게 하기 위해, 선택자에서 가능한 스크램블, 분할, 또는 암호화 방법의 목록 또는 표는 특별한 시드에 대응하는 방법 또는 시드가 방식으로 주기적으로(예를 들어, 시간별로 또는 일별로) "셔플"될 수 있다. 따라서 제1 일에 시간(t1)에 생성된 패킷에 주어진 미디어 노드에 의해 적용되는 암호화 알고리즘은 제2 일에 동일한 시간(t1)에 생성된 패킷에 이것이 적용하는 암호화 알고리즘과는 상이할 수 있다.
각 DMZ 서버는 전형적으로 동일한 "서버 팜"에서 하나 또는 그 이상의 미디어 노드와 물리적으로 연관되어 있다. 전술한 바와 같이, 미디어 노드는 그 관련 DMZ 서버에 시드 또는 키를 제공함으로써(예를 들어, 패킷이 생성된 시간 또는 상태에 기초하여) 이것이 수신된 패킷에 무엇을 해야 할지에 대한 명령을 요청할 수 있지만, 그러나 미디어 노드는 공유된 비밀 또는 DMZ 서버 내의 임의의 다른 데이터 또는 코드에 액세스할 수 없다. DMZ 서버는, 미디어 노드가 패킷을 언스크램블링, 해독, 또는 혼합할 때 사용해야만 하는 방법을 결정하기 위해, 시드 또는 키를 사용함으로써 이러한 요청에 응답할 수 있다. 예를 들어, 패킷이 스크램블되고 미디어 노드가 이를 언스크램블하는 방법을 알기를 원한다면, 상기 DMZ 서버는 시드에 해당하는 지정 알고리즘을 찾기 위해, 스크램블 알고리즘 목록(또는 선택자)을 조사할 수 있다. 그 후, DMZ는 그 알고리즘에 따라 패킷을 언스크램블하도록 미디어 노드에 지시한다. 즉, 미디어는 시드 또는 키에서 실시되는 질의를 DMZ 서버에 전송하고, DMZ 서버는 이들 질의에 지침으로 응답한다.
미디어 노드가 인터넷을 통해 액세스할 수 있지만(이들이 DNS 인식된 IP 어드레스를 갖고 있지 않아도), 상기 DMZ 서버는 와이어 또는 광섬유를 통해 네트워크 연결된 미디어 서버에 오직 로컬 네트워크 연결을 갖는 인터넷으로부터 완전히 격리된다.
"단일 채널" 실시예에 있어서, 시드 및 키는 데이터 패킷 자체의 일부로서 송신 미디어 노드와 수신 미디어 노드 사이에서 송신되거나, 이들은 동일한 루트상의 데이터 패킷 이전에 데이터 패킷으로서 전송될 수 있다. 예를 들어, 패킷을 암호화 할 때, 미디어 노드 # 1은 암호화가 수행된 시간에 기초하여 암호화 키를 패킷에 포함할 수 있다. 패킷이 미디어 노드 # 2 에 도착하였을 때, 미디어 노드 # 2는 키를 그 관련 DMZ 서버로 전송하고, DMZ 서버는 그 선택기에서 해독 방법을 선택하고 해독을 수행하기 위해, 키를 사용할 수 있다. 미디어 노드 # 2는 미디어 노드 # 3으로 전송하기 전에 패킷을 다시 암호화해야 하는 방법을 DMZ 서버에 요청할 수 있다. 다시, DMZ 서버는 선택기를 참조하여, 미디어 노드 # 2에게 패킷을 암호화하고 이를 미디어 노드 # 3 에 전송하기 전에 어떤 방법을 사용해야 하는지를 그 DMZ 서버에 묻는다. 다시, 상기 DMZ 서버는 선택기와 상의하여, 패킷 암호화 시 어떤 방법을 사용해야 할 지를 미디어 노드 # 2 에 알려주며, 그리고 미디어 노드 # 2 에 암호화 방법에 대응하는 상태를 반영하는 키를 전달한다. 미디어 노드 # 2는 암호화를 수행하고 암호화된 패킷 및 키(별도로 또는 패킷의 일부로서)를 미디어 노드 # 3에 전송한다. 그 후, 키는 패킷을 해독하기 위해 미디어 노드 # 3 에 의해 유사한 방식으로 사용될 수 있다. 결과적으로 해커가 패킷을 해독하는 데 사용할 수 있는 단일의 정적 해독 방법은 없다.
시드 또는 키에 실시될 스크램블링 암호화 또는 분할 방법의 결정 요인으로서 상기 예에서의 시간 또는 동적 "상태" 조건의 사용은 단지 예시적일 뿐이다. 임의의 변화하는 파라미터, 예를 들어 패킷이 통과 한 노드의 수는 사용될 지정 스크램블링, 암호화, 또는 분할 방법을 선택하기 위해 시드 또는 키의 "상태"로서 사용될 수도 있다.
"이중 채널" 실시예에 있어서, 시드 및 키는 미디어 노드 사이에서 직접 전송되기 보다는, 시그널링 서버로 이루어진 제2 "명령 및 제어" 채널을 통해 미디어 노드 사이로 전송될 수 있다. 시그널링 노드는 또한 라우팅 정보를 미디어 노드에 제공하고, 또한 패킷이 다른 패킷으로 어떻게 쪼개지거나 혼합되는지 패킷 루트를 따라 미디어 노드에 알릴 수도 있으며, 또한 이들은 다음 미디어 노드(들)가 패킷(들)을 인식할 수 있도록 각 미디어 노드에 식별 "태그"를 적용하여 전송된다. 시그널링 서버는 바람직하게는 주어진 미디어 노드에 네트워크를 통과하는 패킷의 최종 및 다음 미디어 노드만 공급한다. 개별 미디어 노드는 SDNP 클라우드를 통해 패킷의 전체 루트를 알 수 없다. 일부 실시예에 있어서, 라우팅 기능은 2개 또는 그 이상의 시그널링 서버 사이에서 분할될 수 있으며, 하나의 시그널링 서버는 특별한 미디어 노드에 대한 루트를 결정하고, 제2 시그널링 서버는 그로부터 다른 미디어 노드로의 그리고 출구 게이트웨이 노드로의 루트를 결정한다. 이러한 방식으로, 단일의 시그널링 서버는 데이터 패킷의 완전한 라우팅을 알지 못한다.
"3중 채널" 실시예에 있어서, "네임 서버"라 불리는 서버의 제3 그룹은 SDNP 클라우드 내의 요소를 식별하고 또한 SDNP 클라우드에 연결된 디바이스 및 그 대응하는 IP 또는 SDNP 어드레스에 관한 정보를 저장하는 데 사용된다. 또한 상기 네임 서버는 SDNP 클라우드의 미디어 노드를 지속적으로 모니터링하여, 클라우드의 모든 미디어 노드의 조합 사이에 활성 미디어 노드의 현재 목록과 전파 지연 표를 유지한다. 호출을 위치시키는 첫 번째 단계에서, 태블릿과 같은 클라이언트 디바이스는 IP 패킷을 네임 서버에 송신하여, 목적지 또는 사람이 호출되기 위한 어드레스 및 기타 정보를 요청한다. 또한, 디바이스가 클라우드 상에 처음 연결, 예를 들어 등록할 때마다 별도의 전용 네임 서버가 제1 접촉으로서 동작하는 데 사용된다.
보안상 추가적인 이점으로서, 다른 선택기, 시드 및 키 생성기, 그리고 다른 공유 비밀을 갖는 별도의 보안 "영역"이 하나의 SDNP 클라우드 내에 설정될 수 있다. 인접한 영역은 브릿지 미디어 노드에 의해 연결되며, 이는 두 영역의 공유 비밀을 보유하고 또한 한 영역의 규칙에 따라 포맷된 데이터를 다른 영역에 대한 규칙에 따라 서식이 지정된 데이터로 변환하거나 또는 그 역으로 변환할 수 있다.
마찬가지로, 상이한 서비스 제공자에 의해 호스트된 상이한 SDNP 클라우드 사이의 통신을 위해, 각 클라우드의 인터페이스 브릿지 서버 사이에 전이중(즉, 양방향) 통신 링크가 형성된다. 각 인터페이스 브릿지 서버는 각 클라우드에 대해 관련의 공유 비밀 및 기타 보안 항목에 액세스할 수 있다.
유사한 보안 기술이 일반적으로 SDNP 클라우드와 휴대폰 또는 태블릿과 같은 클라이언트 디바이스 사이의 "라스트 마일"에 적용될 수 있다. 상기 클라이언트 디바이스는 통상적으로 클라우드로부터 별도의 보안 영역에 배치되며, 또한 먼저 권한이 부여된 SDNP 클라이언트가 되어야만 한다. 전형적으로 SDNP 관리 서버로부터 다운로드를 통해 클라이언트 디바이스에서 디바이스의 보안 영역에 지정한 소프트웨어 패키지를 설치하는 단계이다. 상기 클라이언트 디바이스는 클라우드의 게이트웨이 미디어 노드를 통해 SDNP 클라우드에 링크된다. 게이트웨이 미디어 노드는 클라우드와 클라이언트 디바이스의 보안 영역 모두에 속하는 공유 비밀에 액세스할 수 있지만, 그러나 클라이언트 디바이스는 SDNP 클라우드에 속하는 공유 비밀에 액세스할 수 없다.
추가된 보안 레벨로서, 클라이언트 디바이스는 시그널링 서버를 통해 서로 시드 및 키를 직접 교환할 수 있다. 따라서 전송 클라이언트 디바이스는 시드 및/또는 키를 수신 클라이언트 디바이스에 직접 송신할 수 있다. 이러한 실시예에 있어서, 수신 클라이언트 디바이스에 의해 수신된 패킷은 송신 클라이언트 디바이스를 떠나는 패킷과 동일한 스크램블 또는 암호화된 형태일 것이다. 따라서 수신 클라이언트 디바이스는, 패킷을 언스크램블하거나 해독하기 위해, 송신 클라이언트 디바이스로부터 이를 수신하는 시드 또는 키를 사용할 수 있다. 클라이언트 디바이스 사이에서 시드와 키를 직접 교환하는 것은 SDNP 네트워크 자체의 동적 스크램블링 및 암호화와 함께, 중첩 보안이라는 추가 보안 레벨을 나타낸다.
또한, 이것이 통신하는 클라이언트 디바이스 또는 게이트웨이 노드는 패킷이 SDNP 네트워크에 도달하기 전에, 동일한 종류의 데이터, 예를 들어 음성 패킷, 텍스트 메시지 파일, 문서, 소프트웨어 단편, 또는 다른 타입의 정보, 예를 들어 하나의 음성 패킷과 하나의 텍스트 파일, 하나의 텍스트 패킷 및 하나의 비디오 또는 사진 이미지를 나타내는 패킷을 혼합할 수 있으며, 또한 출구 게이트웨이 노드 또는 목적지 클라이언트 디바이스는 혼합 패킷을 분할하여 본래의 패킷을 복구할 수 있다. 이는 SDNP 네트워크에서 발생하는 임의의 스크램블링, 암호화 또는 분할에 추가된다. 이러한 경우에, 송신 클라이언트 디바이스는 송신 클라이언트 디바이스 또는 게이트웨이 미디어 노드에서 혼합된 본래의 패킷을 재생성하기 위해, 수신 클라이언트 디바이스에 패킷을 분할하는 방법을 지시하는 시드를 송신 할 수 있다. 연속적인 혼합 및 분할 수행은 선형적인 시컨스 순서를 포함할 수도 있고, 또는 대안적으로 클라이언트가 그 자신의 보안 조치를 실행하여 SDNP 클라우드를 실행하는 중첩된 아키텍처를 사용할 수도 있다.
기재된 발명의 중요한 이점은, SDNP 네트워크에서 제어의 단일 지점이 없고 또한 주어진 통신이 어떻게 발생하는지 또는 그것이 어떻게 동적으로 변할 수 있는지에 대해 완전한 그림이 네트워크의 노드 또는 서버에 없다는 점이다.
예를 들어, 시그널링 서버 상에서 실행되는 시그널링 노드는 통신이 발생하는 루트(또는 경우에 따라서는 오직 일부 경로만)를 알고 있지만, 그러나 이들은 통신되고 있는 데이터 콘텐트에 액세스하지 못하고, 그리고 실제 발신자 또는 클라이언트 누군지를 알지 못한다. 더욱이, 시그널링 노드는 미디어 노드의 DMZ 서버의 공유 비밀에 액세스할 수 없으므로, 전송 중인 데이터 패킷이 암호화, 스크램블, 분할, 또는 혼합되는 방식을 알지 못한다.
SDNP 네임 서버는 발신자의 실제 전화번호 또는 IP 어드레스를 알고 있지만, 그러나 통신 중인 데이터나 또는 다양한 패킷 및 서브패킷의 라우팅에 액세스할 수 없다. 시그널링 노드와 마찬가지로, 상기 네임 서버는 미디어 노드의 DMZ 서버의 공유 비밀에 액세스하지 않으므로, 전송 중인 데이터 패킷이 암호화, 스크램블, 분할, 또는 혼합되는 방법을 알지 못한다.
실제로 미디어 콘텐츠를 전송하는 SDNP 미디어 노드는, 통신하는 발신자가 누구인지를 알지 못하며 또한 다양한 단편화된 패킷이 SDNP 클라우드를 통해 취하고 있는 루트를 알지 못한다. 실제로, 각각의 미디어 노드는 도착할 데이터 패킷(그 태그 또는 헤더에 의해 식별되는), 및 이들을 다음에 전송할 곳, 예를 들어"다음 홉"만 알고 있지만, 그러나 상기 미디어 노드는 데이터가 암호화되는, 스크램블되는, 혼합 또는 분할되는 방법을 알지 못하며 또한 상태, 수치 시드, 또는 키를 사용하여 알고리즘을 선택하거나 파일을 해독하는 방법을 알고 있지 않다. 들어오는 데이터 패킷의 데이터 세그먼트를 올바르게 처리하는 데 요구되는 노하우는 그 공유 비밀, 네트워크를 통해 또는 미디어 노드 자체에 의해 액세스할 수 없는 알고리즘을 사용하여 DMZ 서버에만 알려져 있다.
기재된 본 발명의 다른 독창적인 양태는, 네트워크 대기 시간을 줄이고 전파 지연을 최소화하여 데이터 패킷의 크기를 제어함으로써 보다 우수한 품질의 서비스(QoS)를 제공하고 에코 또는 누락된 호출을 제거할 수 있는 능력, 즉 하나의 고 대역폭 연결에 의존하기보다 클라우드를 통해 보다 작은 데이터 패킷을 병렬로 전송하는 것이다. SDNP 네트워크의 동적 라우팅은 네트워크의 노드 대 노드 전파 지연에 대한 지식을 사용하여, 그 순간에 임의의 통신에 대한 최상의 루트를 동적으로 선택한다. 다른 실시예에 있어서, 우선순위가 높은 클라이언트에 대해, 네트워크는 레이스 라우팅을 촉진시킬 수 있으며, 원음 또는 데이터 콘텐트를 복구하기 위해 가장 빠른 데이터만을 선택하는 SDNP 클라우드를 통해 단편화된 형태로 중복 메시지를 전송할 수 있다.
본 발명에 따른 SDNP 시스템의 많은 이점 중에서, 병렬 및 "메시형 전송"실시예에 있어서, 패킷은 이들이 SDNP 클라우드를 통과할 때 단편화될 수 있어, 잠재적인 해커가 개별적인 서브패킷을 해독할 수 있다 해도 메시지를 이해하는 것을 방지하며, 또한 "동적" 실시예에 있어서 패킷에 적용되는 스크램블링, 암호화, 및 분할 방법은 끊임없이 변화하여, 주어진 시점에서 패킷을 성공적으로 해독으로부터 잠재적인 해커가 임의의 중요한 이익을 취하는 것을 거부한다. 본 발명의 실시예의 많은 추가적인 이점은 이하의 기재의 검토로부터 본 기술분야의 숙련자에게 쉽게 명확해질 것이다.
이하에 열거된 도면에서, 일반적으로 유사한 구성요소는 동일한 도면부호가 부여된다. 그러나 주어진 도면부호가 할당되는 모든 구성요소는 반드시 동일한 도면부호를 갖는 다른 구성요소와 동일하지 않음을 인식해야 한다. 예를 들어, 지정 도면부호를 갖는 암호화 동작은 반드시 동일한 참조 번호를 갖는 다른 암호화 동작과 동일할 필요는 없다. 또한, 구성요소의 그룹, 예를 들어 단일의 도면부호에 의해 집합적으로 식별되는 서버는 반드시 필수적으로 동일할 필요는 없다.
도 1은 회선-기반 전화 네트워크의 개략도이다.
도 2는 패킷 기반 통신 네트워크의 개략도이다.
도 3은 패킷 기반 통신 네트워크에서 패킷 라우팅의 개략도이다.
도 4는 패킷 교환형 네트워크에 대한 통신을 위해 IP 패킷의 구성을 나타내는 그래프이다.
도 5a는 물리 계층(1)의 고 대역폭 연결성 예를 도시하는 통신 네트워크의 개략도이다.
도 5b는 물리 계층(1)의 라스트 마일 연결성 예를 도시하는 통신 네트워크의 개략도이다.
도 6a는 2개의 디바이스 사이의 물리 계층 1 연결의 개략도이다.
도 6b는 3개의 디바이스 사이의 공유된 물리 계층 1 연결의 개략도이다.
도 7a는 버스 구조를 사용하는 3개의 디바이스 사이의 데이터 링크 계층 2 연결의 개략도이다.
도 7b는 허브 구조를 사용하는 3개의 디바이스 사이의 데이터 링크 계층 2 연결의 개략도이다.
도 7c는 데이지 체인 구조를 사용하는 3개의 디바이스 사이의 데이터 링크 계층 2 연결의 개략도이다.
도 8a는 네트워크 스위치를 포함하는 3개의 디바이스 사이의 데이터 링크 계층 2 연결의 개략도이다.
도 8b는 네트워크 스위치의 단순한 개략도이다.
도 8c는 네트워크 스위치의 동작의 개략도이다.
도 9는 이더넷 프로토콜을 사용하는 IP 패킷의 데이터 링크 계층 2 구성의 그래픽 표현이다.
도 10은 이더넷 대 무선 네트워크 브릿지의 간략한 개략도이다.
도 11은 WiFi 프로토콜을 사용하는 IP 패킷의 데이터 링크 계층 2 구성의 그래픽 표현이다.
도 12a는 WiFi 네트워크 액세스 포인트의 양방향 동작의 개략도이다.
도 12b는 WiFi 중계기의 양방향 동작의 개략도이다.
도 13은 셀룰러 네트워크를 통한 전화, 텍스트, 및 데이터 통신의 진화의 그래픽 표현이다.
도 14a는 4G/LTE 통신 네트워크에서의 주파수 분할의 그래픽 표현이다.
도 14b는 4G/LTE 무선 통신에서 사용되는 OFDM 인코딩의 그래픽 표현이다.
도 15는 4G/LTE 프로토콜을 사용하는 IP 패킷의 계층 2 데이터 링크 구성의 그래픽 표현이다.
도 16은 케이블 모뎀 통신 네트워크의 개략도이다.
도 17은 케이블 모뎀 통신 네트워크의 데이터 링크 계층 2 구조의 개략도이다.
도 18은 DOCSIS 기반 케이블 모뎀에 사용되는 트렐리스 인코딩의 그래픽 표현이다.
도 19는 DOCSIS 프로토콜을 사용하는 통신 패킷의 데이터 링크 계층 2 구조의 그래픽 표현이다.
도 20은 3개의 디바이스 사이의 네트워크 계층 3 연결의 개략도이다.
도 21은 7 계층 OSI 모델에 따라 캡슐화된 통신 패킷의 그래픽 표현이다.
도 22는 IPv4 및 IPv6에 대한 통신 패킷을 비교하는 네트워크 계층 3 구조의 그래픽 표현이다.
도 23은 IPv4 프로토콜에 따른 IP 패킷의 그래픽 표현이다.
도 24는 IPv6 프로토콜에 따른 IP 패킷의 그래픽 표현이다.
도 25는 IPv4 및 IPv6 프로토콜에 따라 구성된 어드레스 필드의 그래픽 표현이다.
도 26은 IP 패킷 및 그 대응하는 페이로드에서 프로토콜/다음 헤더 필드의 그래픽 표현이다.
도 27은 3개의 디바이스 사이의 전송 계층 4 연결의 개략도이다.
도 28a는 TCP 프로토콜을 사용하는 IP 패킷의 전송 계층 4 구성의 그래픽 표현이다.
도 28b는 TCP 프로토콜의 필드를 설명하는 표이다.
도 29는 TCP 패킷 전송 시컨스의 그래픽 표현이다.
도 30은 UDP 프로토콜을 사용하는 IP 패킷의 전송 계층 4 구성의 그래픽 표현이다.
도 31a는 클라이언트로부터 호스트로의 전송 계층 4 통신의 개략도이다.
도 31b는 호스트로부터 클라이언트로의 전송 계층 4 통신의 개략도이다.
도 31c는 일반적인 UDP 및 TCP 포트 할당을 설명하는 표이다.
도 31d는 UDP 및 TCP 에 의해 사용되는 예약 및 애드혹 포트 어드레스에 대한 할당된 블록을 기재한 표이다.
도 32a는 네트워크 애플리케이션 변환기(NAT)의 개략도이다.
도 32b는 네트워크 애플리케이션 변환기의 동작의 개략도이다.
도 33은 애플리케이션 계층 5, 계층 6 및 계층 7 과 연결된 3개의 디바이스의 개략도이다.
도 34는 파일 전송 프로토콜(HTTP)에 대한 계층 7 애플리케이션을 사용하는 콘텐트 다운로드의 개략도이다.
도 35a는 하이퍼텍스트 전송 프로토콜 또는 HTTP를 사용하기 위해 계층 7 애플리케이션을 사용하는 웹 페이지 다운로드의 개략도이다.
도 35b는 다양한 서버로부터의 다운로드로 구성된 HTML 웹 페이지의 그래픽 표현이다.
도 36은 IMAP 기반 이메일에 대한 계층 7 애플리케이션의 개략도이다.
도 37은 변하는 네트워크 조건에 대한 서비스 품질(QoS)을 비교한 표이다.
도 38은 네트워크의 노드 내 전파 지연의 기능으로서 왕복 시간(RTT)의 그래프이다.
도 39는 통신 네트워크에서의 멜웨어의 다양한 예에 대한 개략도이다.
도 40은 사이버 공격에 사용되는 클라우드 및 라스트 마일 네트워크 연결 및 멜웨어의 간단한 표현이다.
도 41a는 이더넷 및 WiFi 통신을 모니터링할 수 있는 전자 디바이스를 도시하고 있다.
도 41b는 휴대폰 통신을 모니터링할 수 있는 전자 디바이스를 도시하고 있다.
도 41c는 광섬유 통신을 모니터링할 수 있는 전자 디바이스를 도시하고 있다.
도 42는 상업적으로 이용 가능한 10개의 스파이웨어 프로그램 기능을 비교한 표이다.
도 43은 하루 동안의 사이버 폭행 사건을 보여주는 세계지도이다.
도 44는 가능한 IP 패킷 스니핑 및 패킷 교환형 네트워크 상의 중간 공격자를 도시하고 있다.
도 45는 포트 심문 기반 발견을 이용하는 사이버 공격을 도시하고 있다.
도 46은 IP 패킷 도용을 사용하는 사이버 공격을 도시하고 있다.
도 47은 이중 키 암호화의 개략도이다.
도 48a는 가상 사설 네트워크의 개략도이다.
도 48b는 가상 사설 네트워크의 통신 스택을 도시하고 있다.
도 48c는 애드혹 VPN을 통해 VoIP 호출을 도시한 개략도이다.
도 49a는 인터넷에 대해 위치된 오버 더 탑 VoIP 호출을 도시한 개략도이다.
도 49b는 피어 투 피어 네트워크를 통해 위치된 VoIP 호출을 도시한 개략도이다.
도 50은 네트워크를 통한 종래의 패킷 전송을 도시한 개략도이다.
도 51a는 패킷 스크램블링의 처리를 도시한 개략도이다.
도 51b는 패킷 언스크램블링의 처리를 도시한 개략도이다.
도 51c는 다양한 패킷 스크램블링 알고리즘을 도시한 개략도이다.
도 51d는 정적 매개변수적인 패킷 스크램블링을 도시한 개략도이다.
도 51e는 숨겨진 번호의 동적 스크램블을 도시한 개략도이다.
도 51f는 디더링(dithering)을 이용한 동적 패킷 스크램블을 도시한 개략도이다.
도 52는 선형 네트워크에서 정적 패킷 스크램블링을 도시한 개략도이다.
도 53은 패킷 재스크램블링 처리를 도시한 개략도이다.
도 54는 선형 네트워크에서 동적 패킷 스크램블링을 도시한 개략도이다.
도 55a는 패킷 암호화의 처리를 도시한 개략도이다.
도 55b는 패킷 해독의 처리를 도시한 개략도이다.
도 56은 암호화된 스크램블링 및 그 역기능의 프로세스를 도시한 개략도이다.
도 57은 선형 네트워크에서의 정적 암호화된 스크램블링을 도시한 개략도이다.
도 58은 재스크램블링 및 재암호화를 포함하는 DUSE 재패키징의 프로세스를 도시한 개략도이다.
도 59는 선형 네트워크에서의 동적 암호화된 스크램블링을 도시한 개략도이다.
도 60a는 고정 길이 패킷 분할의 프로세스를 도시한 개략도이다.
도 60b는 고정 길이의 패킷 혼합의 프로세스를 도시한 개략도이다.
도 61a는 다양한 패킷-혼합 방법을 도시한 개략도이다.
도 61b는 연결형 패킷 혼합을 도시한 개략도이다.
도 61c는 인터리빙된 패킷 혼합을 도시한 개략도이다.
도 62a는 혼합 후 스크램블 방법을 도시한 개략도이다.
도 62b는 혼합 후 스크램블 방법을 도시한 개략도이다.
도 63은 선형 네트워크에서 정적 스크램블 혼합을 도시한 개략도이다.
도 64는 선형 네트워크에서 동적 스크램블 혼합을 도시한 개략도이다.
도 65는 다양한 암호화된 패킷 처리를 도시한 개략도이다.
도 66a는 선형 네트워크에서 동적 암호화된 스크램블된 혼합을 도시한 개략도이다.
도 66b는 선형 네트워크에서 동적 암호화를 갖는 정적 스크램블된 혼합을 도시한 개략도이다.
도 66c는 "정상으로의 복귀" 방법을 사용하는 선형 네트워크에서 동적 혼합 스크램블링 및 암호화를 도시한 개략도이다.
도 66d는 DUS-MSE 정상으로의 복귀 방법을 도시한 개략도이다.
도 67a는 단일 출력 패킷 혼합을 도시한 개략도이다.
도 67b는 다중 출력 패킷 혼합을 도시한 개략도이다.
도 67c는 가변 길이 패킷 분할을 도시한 개략도이다.
도 67d는 고정 길이 패킷 분할을 도시한 개략도이다.
도 67e는 혼합 알고리즘을 도시한 흐름도이다.
도 67f는 분할 알고리즘을 나타내는 흐름도이다.
도 67g는 2 단계 혼합 및 스크램블링 알고리즘을 도시하는 흐름도이다.
도 67h는 하이브리드 혼합/스크램블링 알고리즘을 도시하는 흐름도이다.
도 67i는 태그 식별을 도시하는 흐름도이다.
도 68a는 다양한 타입의 패킷 라우팅을 도시한 개략도이다.
도 68b는 단일 루트 또는 선형 전송을 도시한 개략도이다.
도 68c는 다중 루트 또는 병렬 전송을 도시한 개략도이다.
도 68d는 메시형 루트 전송을 도시한 개략도이다.
도 68e는 메시형 루트 전송의 대안적인 실시예를 도시한 개략도이다.
도 69는 정적 다중 루트 전송을 도시한 개략도이다.
도 70은 정적 다중 루트 스크램블링을 도시한 개략도이다.
도 71a는 동적 다중 루트 스크램블링을 도시한 개략도이다.
도 71b는 스크램블링 및 분할의 다양한 조합을 도시한 개략도이다.
도 71c는 중첩된 혼합, 분할, 스크램블링, 및 암호화를 도시한 개략도이다.
도 72는 정적 스크램블 그리고 분할 및 동적 암호화 방법을 도시한 개략도이다.
도 73은 동적 암호화를 갖는 정적 스크램블된 다중 루트 전송을 도시한 개략도이다.
도 74는 분할, 스크램블, 및 암호화 방법의 다양한 조합을 도시한 개략도이다.
도 75는 가변 길이 정적 메시형 라우팅을 도시한 개략도이다.
도 76은 가변 길이 정적 스크램블된 메시형 라우팅을 도시한 개략도이다.
도 77a는 메시형 전송을 위한 가변 길이 혼합 및 분할 동작을 도시한 개략도이다.
도 77b는 메시형 전송을 위한 고정 길이 혼합 및 분할 동작을 도시한 개략도이다.
도 77c는 메시형 네트워크에서 통신 노드 연결성의 다양한 조합을 도시한 개략도이다.
도 77d는 비평탄 메시형 네트워크 노드 연결성을 도시한 개략도이다.
도 78a는 재스크램블된 혼합 및 분할을 도시한 개략도이다.
도 78b는 메시형 입력의 언스크램블된 혼합을 도시한 개략도이다.
도 78c는 메시형 출력에 대한 분할 및 스크램블 동작을 도시한 개략도이다.
도 78d는 메시형 전송을 위한 재스크램블 및 재혼합을 도시한 개략도이다.
도 79a는 메시형 전송을 위한 고정 길이 스크램블된 혼합 및 분할을 도시한 개략도이다.
도 79b는 메시형 전송을 위한 고정 길이 스크램블된 믹스 및 분할의 다른 실시예를 도시한 개략도이다
도 80은 가변 길이의 정적 스크램블된 메시형 라우팅을 도시한 개략도이다.
도 81a는 암호화된 혼합 및 분리를 도시한 개략도이다.
도 81b는 메시형 입력의 해독된 혼합을 도시한 개략도이다.
도 81c는 메시형 출력에 대한 분할 및 암호화를 도시한 개략도이다.
도 82a는 메시형 전송을 위한 재스크램블링 암호화된 패킷을 도시한 개략도이다.
도 82b는 메시형 입력에 대한 해독, 언스크램블된, 및 혼합(DUM) 동작을 도시한 개략도이다.
도 82c는 메시형 출력에 대한 분할, 스크램블, 및 암호화(SSE) 동작을 도시한 개략도이다.
도 83a는 메시형 전송을 위한 SDNP 미디어 노드를 도시한 개략도이다.
도 83b는 단일 루트 SDNP 미디어 노드를 도시한 개략도이다.
도 83c는 단일 루트 통과 SDNP 미디어 노드를 도시한 개략도이다.
도 83d는 여분의 루트 복제를 위한 SDNP 미디어 노드를 도시한 개략도이다.
도 83e는 단일 루트 스크램블링을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83f는 단일 루트 언스크램블링을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83g는 단일 루트 재스크램블링을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83h는 단일 루트 암호화를 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83i는 단일 루트 해독을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83j는 단일 루트 재암호화를 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83k는 단일 루트 스크램블 암호화를 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83l은 단일 루트 언스크램블 해독을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83m은 단일 루트 재패킷팅을 수행하는 SDNP 미디어 노드를 도시한 개략도이다.
도 83n은 메시형 SDNP 게이트웨이 입력을 도시한 개략도이다.
도 83o는 메시형 SDNP 게이트웨이 출력을 도시한 개략도이다.
도 83p는 스크램블된 SDNP 게이트웨이 입력 및 언스크램블된 SDNP 게이트웨이 출력을 도시한 개략도이다.
도 83q는 암호화된 SDNP 게이트웨이 입력 및 해독된 SDNP 게이트웨이 출력을 도시한 개략도이다.
도 83r은 스크램블된 암호화된 SDNP 게이트웨이 입력 및 언스크램블된 해독된 SDNP 게이트웨이 출력을 도시한 개략도이다.
도 83s는 메시형 재스크램블링 및 메시형 재암호화를 수행하는 SDNP 게이트웨이를 도시한 개략도이다
도 84a는 SDNP 미디어 노드 상호 연결을 도시한 개략도이다.
도 84b는 SDNP 클라우드를 도시한 개략도이다.
도 84c는 SDNP 미디어 노드 사이의 암호화된 통신을 도시한 개략도이다.
도 84d는 SDNP 노드 사이의 암호화 통신을 도시한 개략도이다.
도 85a는 휴대폰 클라이언트에 대한 라스트 마일 연결성을 갖는 SDNP 클라우드를 도시한 개략도이다.
도 85b는 보안되지 않은 라스트 마일 연결을 갖는 SDNP 게이트웨이를 도시한 개략도이다.
도 85c는 보안 라스트 마일 연결을 갖는 SDNP 게이트웨이를 도시한 개략도이다.
도 85d는 보안 라스트 마일 연결을 갖는 SDNP 게이트웨이의 대안적인 실시예를 도시한 개략도이다.
도 86은 SDNP 클라우드에 연결된 다양한 클라이언트를 도시한 개략도이다.
도 87은 SDNP 클라우드에서 패킷 라우팅의 개략도이다.
도 88a는 SDNP 클라우드에서 시작되는 패킷 라우팅을 도시한 개략도이다.
도 88b는 SDNP 클라우드에서 제1 클라우드 홉 패킷(hop packet) 라우팅을 도시한 개략도이다.
도 88c는 SDNP 클라우드에서 제2 클라우드 홉 패킷 라우팅을 도시한 개략도이다
도 88d는 SDNP 클라우드에서 제3 클라우드 홉 패킷 라우팅을 도시한 개략도이다.
도 88e는 SDNP 클라우드 게이트웨이로부터의 패킷 라우팅을 도시한 개략도이다.
도 88f는 지정 세션에 대한 SDNP 클라우드에서의 패킷 라우팅을 요약한 개략도이다.
도 89a는 SDNP 클라우드에서 시작되는 대안적인 세션의 패킷 라우팅을 도시한 개략도이다.
도 89b는 SDNP 클라우드에서의 대안적인 세션 패킷 라우팅의 제1 클라우드 홉을 도시한 개략도이다.
도 89c는 SDNP 클라우드에서의 대안적인 세션 패킷 라우팅의 제2 클라우드 홉을 도시한 개략도이다.
도 89d는 SDNP 클라우드에서의 대안적인 세션 패킷 라우팅의 제3 클라우드 홉을 도시한 개략도이다.
도 89e는 SDNP 클라우드에서의 대안적인 세션 패킷 라우팅의 제4 클라우드 홉을 도시한 개략도이다.
도 89f는 SDNP 클라우드 게이트웨이로부터의 대안적인 세션 패킷 라우팅을 도시한 개략도이다.
도 89g는 SDNP 클라우드에서의 대안적인 세션 패킷 라우팅을 요약한 개략도이다.
도 90은 중간 공격자 및 패킷 스니핑에 이용 가능한 SDNP 패킷 콘텐츠를 도시한 개략도이다.
도 91a는 시간에 따른 SDNP 패킷 전송을 그래픽으로 도시한 개략도이다.
도 91b는 시간에 따른 SDNP 패킷 전송을 표 형식으로 도시한 개략도이다
도 91c는 시간에 따라 전송된 대안적인 세션 패킷의 SDNP 패킷을 그래픽으로 도시한 개략도이다.
도 92a는 SDNP 미디어 노드로 들어오는 SDNP 패킷의 제어를 도시한 개략도이다.
도 92b는 SDNP 미디어 노드로부터 나가는 SDNP 패킷의 제어를 도시한 개략도이다.
도 93은 SDNP 알고리즘 선택을 도시한 개략도이다.
도 94는 정규 SDNP 알고리즘 셔플링을 도시한 개략도이다.
도 95a는 다중 영역 SDNP 클라우드를 도시한 개략도이다.
도 95b는 SDNP 다중 영역 보안 관리를 도시한 개략도이다.
도 95c는 다중 영역 전이중 SDNP 브릿지를 도시한 개략도이다.
도 95d는 다중 클라우드를 포함하는 다중 영역 SDNP 네트워크를 도시한 개략도이다.
도 95e는 SDNP 클라우드 사이의 보안되지 않은 링크를 도시한 개략도이다.
도 95f는 안전한 클라우드 간 링크를 위한 다중 영역 전이중 SDNP 브릿지의 사용을 도시한 개략도이다.
도 96a는 보안 SDNP 게이트웨이 및 태블릿 클라이언트에 대한 라스트 마일 링크를 도시한 개략도이다.
도 96b는 클라우드 인터페이스 기능을 도시한 개략도이다.
도 96c는 클라이언트 인터페이스 기능을 도시한 개략도이다.
도 96d는 클라이언트 기능을 도시한 개략도이다.
도 97a는 보안 SDNP 클라우드 게이트웨이의 기능 요소를 도시한 개략도이다.
도 97b는 보안 SDNP 클라우드 게이트웨이의 기능 요소들의 상호 연결을 도시한 개략도이다.
도 98은 보안 SDNP 클라우드 게이트웨이의 클라이언트 인터페이스를 도시한 개략도이다.
도 99a는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 99b는 스크램블된 SDNP 클라우드 전송을 갖는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 99c는 SDNP 및 단일 라스트 마일 루트에 대해 스크램블된 전송을 갖는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 99d는 종단 간(end to end) 스크램블링을 갖는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 99e는 SDNP 및 단일 재스크램블된 라스트 마일 루트에 대한 스크램블된 전송을 갖는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 99f는 영역 지정 재스크램블링을 갖는 다중 영역 전송에서의 키 관리를 도시한 개략도이다.
도 100a는 SDNP 코드 전달 및 설치를 도시한 개략도이다.
도 100b는 SDNP 코드 전달 및 다중 영역 설치를 도시한 개략도이다.
도 101a는 SDNP 비밀의 DMZ 서버로의 전달을 도시한 개략도이다.
도 101b는 비밀 기반 미디어 채널 통신을 도시한 개략도이다.
도 101c는 SDNP 미디어 채널에 의한 비밀 및 키 전달을 도시한 개략도이다.
도 102는 SDNP 시그널링 서버를 통한 동적 SDNP 제어를 도시한 개략도이다.
도 103a는 SDNP 시그널링 서버를 통한 SDNP 키 및 시드 전달을 도시한 개략도이다.
도 103b는 SDNP 시그널링 서버를 통한 SDNP 키 및 시드 전달의 대안적인 실시예를 도시한 개략도이다.
도 104는 클라이언트로의 SDNP 전달을 도시한 개략도이다.
도 105a는 클라이언트에 대한 단일 채널 SDNP 키 및 시드 전달을 도시한 개략도이다.
도 105b는 클라이언트에 대한 단일 채널 SDNP 키 및 시드 전달의 대안적인 실시예를 도시한 개략도이다.
도 106은 클라이언트 SDNP 알고리즘 셔플링을 도시한 개략도이다.
도 107은 클라이언트에 대한 이중 채널 SDNP 키 및 시드 전달을 도시한 개략도이다.
도 108은 SDNP 클라이언트에 대한 공개 키 전달을 도시한 개략도이다.
도 109는 단일 채널 SDNP 메시형 전송을 도시한 개략도이다.
도 110a는 미디어-채널 SDNP 애드혹 통신, 파트 1을 도시하는 흐름도이다.
도 110b는 미디어-채널 SDNP 애드혹 통신, 파트 2를 도시하는 흐름도이다.
도 110c는 미디어-채널 SDNP 애드혹 통신, 파트 3을 도시하는 흐름도이다.
도 110d는 미디어-채널 SDNP 애드혹 통신, 파트 4를 도시하는 흐름도이다.
도 110e는 미디어-채널 SDNP 애드혹 통신, 파트 5를 도시하는 흐름도이다.
도 110f는 미디어-채널 SDNP 애드혹 통신, 파트 6을 도시하는 흐름도이다.
도 111a는 SDNP 애드혹 패킷 송신 시컨스를 요약한 흐름도이다.
도 111b는 SDNP 송신 라우팅을 요약한 네트워크 맵이다.
도 112a는 SDNP 애드혹 패킷 응답 시컨스를 요약한 흐름도이다.
도 112b는 SDNP 응답 라우팅을 요약한 네트워크 맵이다.
도 113a는 SDNP 패킷 준비를 도시한 개략도이다.
도 113b는 SDNP 패킷 준비의 대안적인 실시예를 도시한 개략도이다.
도 114는 SDNP 패킷 아키텍처의 일 실시예를 요약한 표이다.
도 115는 클라우드 내의 시그널링 기능이 미디어 노드로서 동작하는 동일한 서버에 의해 수행되고 제1 및 라스트 마일에서의 시그널링 기능이 별도의 시그널링에 의해 수행되는, 이중 채널 SDNP 메시형 전송의 일 실시예를 도시한 개략도이다.
도 116은 클라우드와 제1 및 라스트 마일 모두에서의 시그널링 기능이 별도의 시그널링 서버에 의해 수행되는, 이중 채널 SDNP 메시형 전송의 다른 실시예를 도시한 개략도이다.
도 117은 3채널 SDNP 메시형 전송을 도시한 개략도이다.
도 118은 SDNP 노드 및 디바이스 등록을 도시한 개략도이다.
도 119는 SDNP 실시간 전파 지연 모니터링을 도시한 개략도이다.
도 120은 테스트 패킷 전파 지연 모니터링을 나타내는 그래프이다.
도 121은 3채널 SDNP 메시형 전송을 도시한 개략도이다.
도 122는 SDNP 중복 네임 서버(name server)를 도시한 개략도이다.
도 123은 SDNP 중복 시그널링 서버를 도시한 개략도이다.
도 124a는 3채널 SDNP 통신, 파트 1을 도시하는 흐름도이다.
도 124b는 3채널 SDNP 통신, 파트 2를 도시하는 흐름도이다.
도 124c는 3채널 SDNP 통신, 파트 3을 도시하는 흐름도이다.
도 124d는 3채널 SDNP 통신, 파트 4를 도시하는 흐름도이다.
도 124e는 3채널 SDNP 통신, 파트 5를 도시하는 흐름도이다.
도 125a는 SDNP 3채널 패킷 송신 시컨스를 요약하는 흐름도이다.
도 125b는 SDNP 3채널 패킷 전송 라우팅을 요약한 네트워크 맵이다.
도 126a는 SDNP 3채널 패킷 응답 시컨스를 요약한 흐름도이다.
도 126b는 SDNP 3채널 패킷 응답 라우팅을 요약한 네트워크 맵이다.
도 126c는 SDNP 3채널 패킷 응답 시컨스의 대안적인 실시예를 요약하는 흐름도이다.
도 127은 SDNP 노드 패킷 전처리를 도시한 개략도이다.
도 128은 SDNP 재패킷팅을 도시한 개략도이다.
도 129a는 최종 노드 실시간 패킷 재구성을 도시한 개략도이다.
도 129b는 버퍼링된 최종 노드 패킷 재구성을 도시한 개략도이다.
도 129c는 버퍼링된 클라이언트 패킷 재구성을 도시한 개략도이다.
도 129d는 클라이언트 패킷 구성을 요약하는 흐름도이다.
도 130은 SDNP 명령 및 제어 신호 패킷을 도시한 개략도이다.
도 131은 SDNP 동적 루트 발견을 도시한 개략도이다.
도 132a는 명령 및 제어 신호 패킷, 경로 1-1을 나타내는 흐름도이다.
도 132b는 명령 및 제어 신호 패킷, 경로 1-2를 나타내는 흐름도이다.
도 132c는 SDNP 패킷 재구성을 도시한 개략도이다.
도 133a는 SDNP 단편화 전송의 OSI 계층 표현을 도시한 개략도이다.
도 133b는 터널링된 SDNP 단편화 전송의 OSI 계층 표현을 도시한 개략도이다.
도 134는 SDNP 패킷 레이스 라우팅을 도시한 개략도이다.
도 135는 SDNP 통신과 다른 패킷 교환형 네트워크 통신을 비교한 표이다.
회선 교환형 전화기술의 거의 1.5 세기 동안, 오늘날의 통신 시스템 및 네트워크는 불과 10년 만에 케이블 및 광섬유를 통해 이더넷, WiFi, 4G/LTE, 및 DOCSIS3 데이터가 운반된 인터넷 프로토콜을 사용하여 패킷 교환형 통신으로 모두 이동되었다. 신뢰할 수 있는 IP 패킷 전달을 보장하기 위해 중복 경로를 사용하는 것, 즉 시스템 상호 운용성의 독보적인 레벨 및 전세계에 걸친 연결성과 함께, 인터넷이 처음 생성된 이유를 포함하여, 음성, 문자, 그림, 비디오 및 데이터를 제공하는 이점은 많다. 그러나 어떤 혁신이라도 신기술이 창안하는 도전의 강도는 종종 유도된 이점과 일치한다.
기존 통신 사업자의 단점
본 발명의 배경 기술 전체에 걸쳐 상세히 기재된 바와 같이, 오늘날의 통신은 많은 단점을 갖고 있다. 오늘날 에이티앤티(AT&T), 버라이즌(Verizon), 엔티티(NTT), 보다폰(Vodaphone) 등과 같은 세계 주요 장거리 통신 통신업체에 의해 포함되고 있는 맞춤형 디지털 하드웨어로 구성된 최고 성능의 통신 시스템은 일반적으로 우수한 음질을 제공하지만, 그러나 고가의 월사용료, 연결 요금, 장거리 요금, 복잡한 데이터 요금제, 장거리 로밍 요금, 및 다양한 서비스 요금이 포함된다. 이들 네트워크는 비공개이기 때문에, 실제 데이터 보안은 공개적으로 알려지지 않으며, 보안 위반, 해킹 및 침입은 일반적으로 공개되지 않는다. 오늘날 언론에 보도된 유선 전화 및 프라이버시 침해의 수를 감안하면, 사설 통신사의 통신 보안은 그 사적 클라우드가 아니라면, 그 라스트 마일 연결에서 의심의 여지가 있다.
"인터넷 서비스 공급자" 또는 ISP는 글로벌 통신 체인에 다른 링크를 형성한다. 본 발명의 배경 기술에 기재된 바와 같이, VoIP 또는 "인터넷 프로토콜을 통한 음성"을 사용하여 인터넷을 통해 전달되는 음성은 이하를 포함하는 수많은 서비스 품질 또는 QoS 문제로 고통 받고 있다:
- 패킷 교환형 네트워크인 인터넷은 적시에 IP 패킷을 제공하거나 또는 지연 시간이 적고 QoS 가 높은 실시간 애플리케이션을 지원하도록 설계되지 않았다.
- IP 패킷의 라우팅은 예측할 수 없는 경로를 취하고 있어, 끊임없이 변하는 지연, 높은 데이터 에러율의 폭발, 및 예기치 않은 통화 끊김
- IP 패킷 라우팅은 인터넷 서비스 공급자의 재량에 따라 이루어지며, 이는 패킷이 라우팅되는 네트워크를 제어하며 또한 자체 네트워크의 로드 균형을 조정하거나 또는 그 네트워크를 횡단하는 일반적인 트래픽의 연결 품질의 열화 시의 비용으로 그 VIP 서비스를 더 좋게 하기 위해 라우팅을 제어할 수 있다.
- 인터넷 상에서 무임승차하는 라인, 카카오 톡, 비버(Viber)와 같은 오버 더 탑 또는 OTT 제공자는 인터넷 히치하이커로서 동작하며, 또한 QoS 에 영향을 미치는 네트워크 또는 요인을 제어하지 못한다.
- 적당한 데이터 전송률에서도 이해할 수 있는 음성 품질의 오디오를 제공하지 못하는 헤비급 오디오 코넥 사용
- TCP 전송 프로토콜을 기반으로 하는 VoIP는 핸드세이킹 및 IP 패킷 재방송 중 유도된 지연에 의해 유발된 높은 대기 시간 및 열화된 오디오 품질로 고통 받고 있다.
도움을 받지 못한 UDP 전송은 페이로드 무결성을 제공하지 않는다.
QoS 문제 외에도, 오늘날의 디바이스 및 네트워크의 보안은 최악이어서, 글로벌 통신의 미래 요구를 지원하기에 전적으로 허용할 수 없는 수준이다. 배경 기술에서 상세히 설명하고 또한 이미 도 40에 도시된 바와 같이, 네트워크 보안은 스파이웨어, IP 패킷 스니핑, 도청 및 사이버 해적 "가짜" 휴대폰 타워 통화 차단을 포함하여, 라스트 링크 상에서; 그리고 스파이웨어, IP 패킷 스니핑, 바이러스와 같은 감염, 사이버 해적 "중간 공격자"를 포함하는 최종 네트워크 연결의 로컬 네트워크 또는 텔코 부분에서, 스파이웨어, 트로이 목마, 감염 및 피싱을 비롯한 통신 디바이스 상의 대규모 사이버 공격에 취약하다. 클라우드 자체는 클라우드 게이트웨이, 바이러스와 같은 감염, 중간 공격자, 서비스 거부 공격 및 인증되지 않은 정부 감시에서 시작하는 사이버 해적으로부터 보안을 해제하여 무단 액세스를 받는다. 요약하면, 오늘날의 통신 보안은 사이버 해적들이 쉽게 악용하고 사이버 범죄 및 사이버 프라이버시 침해에 유용한 다음과 같은 다양한 취약점에 의해 타협된다.
- 목적지 IP 어드레스, 목적지 포트 # 및 목적지 MAC 어드레스를 포함하여, IP 패킷의 목적지 폭로.
- 소스 IP 어드레스, 소스 포트 # 및 본래 MAC 어드레스를 포함하여, IP 패킷의 소스 폭로.
- 사용된 계층 4 전송 타입 및 포트 # 요청된 서비스 타입 및 IP 패킷의 페이로드에 캡슐화된 애플리케이션 데이터 폭로.
- 암호화되지 않은 파일에서, 개인 및 기밀 정보, 로그인 정보, 애플리케이션 패스워드, 재무 기록, 비디오 및 사진을 포함하여, IP 패킷의 페이로드에 캡슐화된 모든 애플리케이션 및 파일 데이터.
- 사이버 당사자가 암호화된 파일을 파괴하기 위해 반복된 기회를 제공할 수 있게 하는 대화의 다이얼로그.
- FTP, 이메일 및 웹 페이지 기반 감염을 사용하여, 통신 디바이스 및 라우터 내에 스파이웨어 및 피싱 프로그램 및 트로이 목마를 포함하여, 멜웨어를 설치하는 수많은 기회.
도 44에 도시된 인터넷 프로토콜을 사용하여 패킷 교환형 통신 네트워크의 근본적으로 근본적인 약점인 키 포인트의 반복은, 임의의 적대적 당사자 또는 사이버 해적 가로챔 IP 패킷(670)이 IP 패킷에 포함된 데이터를 생성하는 데 어떤 디바이스가 포함되었는지를 알 수 있다는 것이며, 여기서 IP 패킷이 어디서 왔는지, IP 패킷이 전송되는 곳, 데이터가 어떻게 전송되는지, 즉 UDP 또는 TCP 인지, 그리고 어떤 종류의 서비스가 요청되는지, 즉 페이로드 내에 어떤 종류의 애플리케이션 데이터가 포함되는지 등을 알 수 있다. 이와 관련하여 사이버 해적은 대화의 "문맥"을 결정할 수 있어서, 암호를 균열시키고, 암호 보안을 파괴하며, 그리고 파일, 데이터 및 페이로드 콘텐트에 대한 무단 액세스를 얻는 기회를 향상시킨다.
암호화 - 기재된 바와 같이 다양한 사이버 공격에 대해 방어하기 위해, 오늘날 네트워크 관리자, IT 전문가 및 애플리케이션은 주로 단일의 방어-암호화에 의존한다. 암호화는 읽을 수 있는 텍스트, 실행 가능한 프로그램, 볼 수 있는 비디오 및 그림, 또는 이해하기 쉬운 오디오를 "평문(plaintext)"으로도 알려져 있는 인식 가능한 콘텐트를 무의미한 텍스트 문자의 스트링으로서 나타나는 "암호문"으로서 알려진 대체 파일 타입으로 변환하는 수단이다.
보호되지 않은 파일을 암호화된 파일로 변환하는 암호화 프로세스는 암호 변환 프로세스의 임의의 명백한 패턴을 드러내지 않고 데이터를 등가의 텍스트 요소로 변경하기 위해 암호(cypher)로 지칭되는, 논리적 또는 수학적 알고리즘을 사용하는 단계를 포함한다. 그 후, 암호화된 파일은 목적지 디바이스에 의해 수신될 때까지 통신 네트워크 또는 매체를 통해 송신된다. 파일 수신에 따라, "해독"이라는 프로세스를 사용하는 수신 디바이스는 그 후 인코딩된 메시지를 본래의 내용으로 해독한다. "암호화"로 널리 알려진 암호화 및 해독의 연구는 컴퓨터 과학 및 전기 공학과 함께, 수 이론, 집합 이론, 및 알고리즘 설계를 포함하여, 수학 요소를 혼합한다.
간단한 "단일 키" 또는 "대칭 키" 암호화 기술에 있어서, 양 당사자에 의해 선험적으로 알려진 단일 키워드 또는 구문은 파일 암호화 및 해독 프로세스를 언로킹할 수 있다. 제2차 세계 대전에서, 예를 들어 오픈 라디오 채널 상에서 통신된 잠수함과 해상 선박은 암호화된 메시지를 사용하였다. 처음에는 암호화가 단일 키 기반이었다. 암호 패턴을 분석함으로써, 연합군 암호 학자들은 때때로 암호 핵심 단어나 패턴을 폭로할 수 있었고, 그 후 발견 없이 암호화된 파일을 읽을 수 있었다. 암호화 방법이 더 복잡해짐에 따라, 코드를 수동으로 파괴하는 것은 더욱 어려워졌다.
코드는 컴퓨팅의 초기 형태인 기계 기반 암호로 발전했다. 당시 코드를 파괴하는 유일한 방법은 암호 기계를 훔쳐서 파일을 암호화하는 것과 동일한 도구를 사용하여 메시지를 해독하는 것이었다. 문제는 훔치는 것이 검출되지 않고 암호 기계를 훔치는 방법이었다. 코드 기계가 손상된 것으로 알려졌다면, 적군은 간단히 코드를 변경하고 이미 동작중인 암호 기계를 업데이트만 하면 된다. 이 원칙은 현재까지도 여전히 실천되고 있으며, 가장 효과적인 사이버 공격은 검출되지 않은 공격이다.
컴퓨팅과 냉전 시대의 도래로 인해, 암호화는 더욱 복잡해졌지만, 그러나 암호화 코드를 해독하는 데 사용된 컴퓨터의 속도 또한 향상되었다. 보안 통신 개발의 각 단계에서, 정보를 암호화하는 기술 및 노하우와 암호화 코드를 해독하는 능력이 그 속도로 거의 발전되지 않았다. 암호화의 주요한 다음 진화 단계는 1970년대에 오늘날에도 여전히 사용되는 이중 키 암호화의 혁신으로 이루어졌다. 가장 잘 알려진 이중 키 암호화 방법 중 하나는 그 개발자인 리베스트(Rivest), 샤미르(Shamir) 및 아델만(Adleman)의 이름을 딴 RSA 공개 키 암호화 시스템이다. 동시 개발자인 RSA 에 대한 공표 인정에도 불구하고, 동일한 원칙을 독자적으로 고안했다. RSA는 공개로부터 보안된 2개의 큰 소수에 기반하는 2개의 암호 키를 사용한다. 하나의 알고리즘은 이들 2개의 소수를 여기에서는 E- 키로 언급되는 암호 키로 변환하는 데 사용되고, 동일한 2개의 비밀 소수를 여기에서는 D 키로도 지칭되는 비밀 암호 키로 변환하기 위해 상이한 수학적 알고리즘이 사용된다. 여기에서는 "키 게시자"로서 지칭되는 비밀 소수를 선택한 RSA 사용자는 전형적으로 1024b 내지 4096b 크기를 포함하는, 알고리즘 방식으로 생성된 E 키를, 파일을 암호화하기를 원하는 사람에게 배포 또는 "게시"한다. 이 키는 암호화되지 않은 형태로 많은 당사자에게 배포될 수 있기 때문에, 상기 E 키는 "공용 키"로서 알려져 있다.
키 게시자와 통신하기를 원하는 당사자는 특별한 키 게시자에게 송신될 임의의 파일을 암호화하기 위해, 전형적으로 상업용 소프트웨어 형태로 제공되는 공개적으로 사용 가능한 알고리즘과 함께 이 공용 전자 키를 사용한다. 암호화된 파일의 수신에 따라, 키 게시자는 그 후 파일을 암호화하기 위해 그 비밀 D 키를 사용하여, 이를 평문으로 복귀시킨다. 일반적으로 이중 키 방법과 RSA 알고리즘의 고유한 특징은 특히 파일을 암호화하는 데 사용된 공용 전자 키가 해독에 사용될 수 없다는 점이다. 키 게시자에 의해 소유된 비밀 D 키만 파일 해독의 능력을 갖고 있다.
파일 암호화 및 해독에서 이중 키, 분할 키 또는 다중 키 교환의 개념은 지정하게 RSA 또는 임의의 하나의 알고리즘 방법에 국한되지 않지만, 그러나 통신 방법을 일련의 단계로서 방법론적으로 지정한다. 예를 들어, 도 47은 스위치 패킷 통신 네트워크를 통해 통신 실현 시 이중 키 교환을 도시하고 있다. 도시된 바와 같이, 휴대폰(32)으로부터 보안 파일을 수신하기를 원하는 노트북(35)은 먼저 2개의 키, 즉 암호화를 위한 E 키(690), 및 일부 알고리즘을 사용하여 해독을 위한 D 키(691)를 발생시킨다. 그 후, 노트북(35)은 IP 패킷(695)을 운반하는 공공 네트워크 통신(692)을 사용하여 E 키(690)를 휴대폰(32)에 송신한다. IP 패킷(695)은 그 페이로드로서 전송 프로토콜(TCP) 및 E- 키(690)의 암호화된 복사본뿐만 아니라, 휴대폰(32)의 목적지 IP 어드레스 "CP", 포트 # 21 과 함께, 암호화되지 않은 형태로, 노트북(35)의 MAC 어드레스, IP 소스 어드레스 "NB" 및 포트 어드레스 # 9999를 도시하고 있다.
합의된 암호화 알고리즘 또는 소프트웨어 패키지를 사용하여, 휴대폰(32)은 휴대폰(32)으로부터 노트북(35)으로 보안 통신(693)에서 IP 패킷(696)의 페이로드로서 운반되는 암호화된 파일, 즉 암호문(698)을 생산하기 위해, 암호화 알고리즘(694A) 및 암호화 전자 키(690)를 사용하여 평문 파일(697A)을 처리한다. IP 패킷(696)의 수신에 따라, 알고리즘(694B)은 보안 암호화 키[즉, D 키(691)]를 사용하여 파일을 해독한다. D 키(691)가 E-키(690)와 일치하도록 만들어지기 때문에, 본질적으로 알고리즘(694B)은 암호문(698)을 해독하여 다시 암호화되지 않은 평문(697B)으로 되돌리기 위해 두 키의 지식을 이용한다. IP 패킷(696)의 페이로드가 암호화된 파일, 즉 암호문(698)의 형태로 보안 되는 동안, IP 패킷의 나머지는 암호화되지 않고, 스니핑 가능하며, 또한 소스 IP 어드레스 "CP" 및 포트 # 20, 및 목적지 IP 어드레스 "NB" 및 관련의 포트 # 9999을 포함하는 임의의 사이버 해적에 의해 판독될 수 있다. 따라서 페이로드 자체가 오픈될 수 없더라도, 통신은 모니터링될 수 있다.
가상 사설 네트워크 - 암호화에 의존하는 다른 보안 방법은 "가상 사설 네트워크" 또는 VPN의 보안 방법이다. VPN 에 있어서, 암호화된 IP 패킷을 사용하여 네트워크에 터널 또는 보안 파이프가 형성된다. 페이로드만 암호화하기보다는, VPN 에서 전체 IP 패킷이 암호화되고, 그 후 캡슐화된 패킷을 하나의 VPN 게이트웨이로부터 다른 VPN 게이트웨이로 전송하는 뮬(mule) 또는 반송파로서 동작하는 다른 암호화되지 않은 IP 패킷 내에 캡슐화된다. 본래, VPN은 이질적인 근거리 통신망을 장거리로 함께 연결하기 위해, 예를 들어 뉴욕, 로스앤젤레스 및 도쿄에서 사설 네트워크를 운영하는 회사가, 하나의 글로벌 사설 네트워크를 공유하는 것처럼, 동일한 기능을 사용하여 다양한 LAN을 상호 연결하기를 원할 때 사용되었다.
RF 연결(704) 및 유선 연결(701)을 통해 다수의 디바이스를 무선으로 지원하는 하나의 LAN의 일부로서 서버(700)가 콘텐츠(706) 및 VPN 터널(705)을 포함하는 "가상 사설 네트워크" 또는 VPN 에 의해, 709C를 통해 데스크탑(709A)으로의 무선 연결(708)을 갖는 제2 서버에, 노트북(711)에, 및 WiFi 기지국(710)에 연결된다. 상대적으로 낮은 이들 대역폭 링크 이외에, 서버(707)는 고 대역폭 연결(712)을 통해 슈퍼 컴퓨터(713)에도 연결된다. 동작 시, 소스 IP 어드레스 "S8" 및 포트 # 500을 지정하는 서버(A)로부터의 외부 IP 패킷(714)은, 목적지 IP 어드레스 "S9" 및 포트 # 500 에서 서버(B)로 송신된다. 이 외부 IP 패킷(714)은 서버(700, 707)가 그 내부를 통과하는 데이터를 위해 서로 암호화된 터널을 어떻게 형성하는지를 기재하고 있다. 외부 패킷(714)의 VPN 페이로드는 소스 IP 어드레스 "DT" 및 대응하는 애드혹 포트 # 17001을 갖는 데스크탑(702B)과 소스 IP 어드레스 "NB" 및 대응하는 애드혹(애드혹)을 갖는 노트북(711) 포트 # 21 사이에 직접 통신을 제공하는 라스트 마일 IP 패킷(715)을 포함한다.
가상 사설 네트워크를 사용하여 안전하게 이런 전송을 설정하기 위해, 실제 통신이 송신되기 전에 VPN 터널(705)이 생성되고 세션이 시작되었다. 기업 애플리케이션에 있어서, VPN 터널(705)은 애드혹 기반으로 인터넷을 통해 운반되지 않지만, 그러나 일반적으로 그 자체의 광섬유 및 하드웨어 네트워크를 소유하는 전용 ISP 또는 통신업체에 의해 운반된다. 이 통신업체는 종종 주어진 비용에 대해 지정 대역폭을 보장하도록, VPN 서비스를 요구하는 회사와의 연간 또는 장기 계약 계약을 체결한다. 이상적으로는, 고속 전용 링크는 VPN의 성능, QoS 또는 보안을 방해하기 위해 중간 또는 "라스트 마일" 연결 없이 서버(700)와 서버(707) 모두에 직접 연결된다.
동작 시, 전형적인 VPN은 2단계 프로세스를 요구하며, 하나는 VPN 에 "로그인"을 생성하거나 또는 로그인하는 것이며, 두 번째 단계는 보안 파이프 또는 터널 내에서 데이터를 전송하는 단계이다. 터널링의 개념이 도 48b에 계층적으로 도시되어 있으며, 여기서 통신 스택(720, 721)에 의해 운반된 외부 IP 패킷은 계층 1 내지 계층 4 상에 VPN 연결(722)을 형성하고, 계층 5를 이용하여 가상 VP 세션(723)을 생성하고, 계층 6인 프리젠테이션 계층을 이용하여 암호화(725)를 촉진하고 서버(700)와 서버(707) 사이에 게이트웨이 파이프(705)에 대한 VPN 게이트웨이를 달성한다. VPN 연결(722)이 인터넷 프로토콜을 사용하여 IP 패킷을 전송하지만, VPN의 PHY 계층 1 및 VPN 데이터 링크 계층 2는 일반적으로 전용 반송파에 의해 그리고 인터넷을 통해 예측할 수 없는 라우팅을 사용하지 않고 지원된다. 예를 들어, 데스크탑(702C, 709A) 사이의 디바이스 대 디바이스 통신(706)으로서 전달된 애플리케이션 계층 6 데이터는, VPN 이 존재하지 않더라도, 통신을 설정하는 데 요구되는 7개의 OSI 계층 모두를 포함하는 터널링된 데이터(726)로서 공급된다.
동작 시, 일단 서버(707)를 통과한 통신 스택(720)으로부터의 외부 IP 패킷은 패킷의 진정한 메시지인 캡슐화된 데이터(726)를 폭로하도록 개방된다. 이러한 방식으로, 종단 간 통신은 VPN 터널이 임의의 통신 시도 전에 형성되어야만 하고 또한 대화가 종료 된 후에는 닫혀져야만 한다는 점을 제외하고는, VPN 터널을 생성하는 데 사용된 세부 사항을 무시하고 발생한다. 먼저 VPN 터널을 열지 않으면, IP 패킷 스니핑, 도용, 감염 등에 취약한 IP 패킷 715의 암호화되지 않은 전송으로 나타날 것이다. 대화가 완료된 후 VPN을 닫지 않으면, 사이버 범죄자에게 다른 사람의 VPN 터널에서의 불법 활동을 숨길 수 있는 기회를 제공할 수 있으며, 차단되었다면, 무고한 사람에 대해 부과되는 가능한 형사 처벌로 나타날 수 있다.
VPN 이 여러 개인 근거리 통신망이 전용 용량 및 대역폭으로 개인 연결을 사용하여 서로 상호 연결하는 일반적인 방법이지만, 공용 네트워크 및 인터넷을 통한 VPN의 사용은 두 당사자 통신에 문제가 있다. VPN의 하나의 문제는 VPN 연결이 패킷 단위가 아닌 사전에, 이것이 사용될 수만 있다면, 설정되어야만 한다는 점이다. 예를 들어, 휴대폰(730)이 휴대폰(737)에서 의도된 호출 수신자와 접촉하기 전에, 패킷 교환형 네트워크를 통해 연결된 VoIP 호출의 예시적인 도 48c에 도시된 바와 같이, 이는 먼저 도시된 바와 같은 단순화된 알고리즘으로 단계(740)를 따르는 VPN 세션을 먼저 설정해야만 한다. 그렇게 함으로써, VPN 연결 어플리케이션을 갖는 휴대폰(730)은 임의의 이용 가능한 라스트 마일 라우팅을 통해, 이 경우에는 라디오 통신(741A)을 통해, WiFi 기지국(731)으로, 이어서 유선 "통신(741B)에 의해 라우터(732)로, 그 후 유선 통신(741C)에 의해 VPN 호스트(733)로, IP 패킷을 송신한다. 일단 휴대폰(730)과 VPN 호스트(733) 사이에 세션이 설정되면, 휴대폰(730)은 VPN 호스트(733)에게 VPN 호스트(734)로의 VPN 터널(741)을 생성하도록 지시하고, 계층 5 세션은 계층 6 에 의해 암호화된 터널과 협상한다.
일단 VPN 연결이 설정되면, 애플리케이션 관련 단계(745)에 따른 휴대폰(730)은 임의의 VoIP 전화 애플리케이션을 통해 호출을 한다. 이 단계에서, 애플리케이션은 VPN 호스트(734)로부터 휴대폰(737)으로 라스트 마일을 통해 "콜 아웃"링크를 설정해야만 한다. VoIP 애플리케이션이 이를 수행할 수 없거나 또는 권한이 없다면, 호출이 실패하고 즉시 종료될 것이다. 그렇지 않으면, 내부 IP 패킷은 호출 휴대폰(730)과 목적지 휴대폰(737) 사이에 애플리케이션 계층 5 세션을 설정하고, IP 테스트 패킷이 적절히 해독되고 이해될 수 있음을 확인한다.
단계(745)에 따라 전화를 걸기 위해, 호출은 전화기의 일반 전화 연결 기능이 아닌 전화에서 실행 중인 계층 7 애플리케이션에서 전화를 걸어야 하는데, 그 이유는 전화기에서 전화 반송파의 SIM 카드가 VPN 터널과 호환되지 않기 때문이다. 일단 호출이 시작되면, 휴대폰(730)은 그 통신 애플리케이션에 따라 소리의 작은 단편 또는 "스니퍼(snipper)"를 나타내는 일련의 IP 패킷을 전송한다. 도시된 예에 있어서, 이들 패킷은 발신자의 휴대폰(730)의 애플리케이션으로부터 WiFi 링크(746A)를 통해 WiFi 기지국(731)으로, 그 후 유선 연결(746B)을 통해 라우터(732)로, 그리고 마지막으로 유선 연결(746C)을 통해 VPN 호스트(733)로 송신된다. 그 후, 상기 데이터는 VPN 터널(742)을 통해 연결(747)에 의해 VPN 호스트(735)로 송신된다. 일단 VPN 터널을 떠났다면, VPN 호스트는 앞으로 유선 연결(748A)에서 라우터(735)로, 그 후 유선 연결(748B)에 의해 휴대폰 시스템 및 다시 정상적인 전화 호출로서 737을 호출하는 타워(736)로, 데이터를 송신한다. 휴대폰 애플리케이션으로부터 동일한 애플리케이션으로 동작하지 않는 휴대폰으로의 호출 프로세스는 "콜 아웃" 기능으로 지칭된다.
전술한 예는 공용 네트워크를 통해 VPN 에 연결하는 다른 문제점을 강조하고 있으며, 휴대폰(730) 상의 발신자로부터 VPN 호스트(733)로 그리고 VPN 호스트(734)로부터 휴대폰(737) 상에 호출된 사람에게로 모두의 라스트 마일 링크는 VPN의 부분이 아니므로, 따라서 보안, 성능 또는 호출 QoS를 보장하지 않는다. 특히, 호출 연결부(748A, 746B, 746C)뿐만 아니라 연결부(746A, 746B, 746C)를 포함하는 발신자의 라스트 마일은, 모두 스니핑에 공개되어 있고 또한 사이버 공격을 받는다.
일단 호출이 완료되고 휴대폰(737)이 전화를 끊었다면, VPN(742)은 단계(749)에 따라 종료되어야 하며, 여기서 VPN 계층 5는 VPN 세션을 닫도록 협력하고, 휴대폰(730)은 VPN 호스트(733)로부터 연결을 끊는다.
그러나 규정된 단계를 따르더라도, VPN을 통해 전화를 걸거나 문서를 송신하는 것은 다음과 임의의 많은 이유로 실패하지 않을 수 있다.
- VPN은 실시간 애플리케이션, VoIP 또는 비디오를 지원하기에 충분한 대기 시간으로 동작하지 않을 수 있다.
- 발신자로부터 VPN 게이트웨이로 또는 VPN 게이트웨이로부터 수신자로의 VPN 라스트 마일 연결은, 실시간 애플리케이션, VoIP 또는 비디오를 지원하기에 충분한 낮은 대기 시간으로 동작하지 않을 수 있다.
- 발신자 또는 의도한 수신자에게 가장 가까운 VPN 게이트웨이, 즉 "라스트 마일"은 매우 멀리 있을 수 있으며, 가능하기로는 VPN 이 없는 호출 수신자와의 거리보다 훨씬 더 멀어서, 연결을 과도한 대기 시간, 네트워크 불안정성, 알려지지 않은 네트워크를 통한 제어되지 않은 라우팅, 다양한 QOS, 및 연결의 보호되지 않은 부분에서 중간 공격자 공격에 대한 수많은 기회를 노출시킨다.
- VPN 게이트웨이로부터 호출 수신자로의 VPN 라스트 마일 연결은, "콜 아웃"연결 및 패킷 포워딩 또는 로컬 텔코로의 지원 링크를 지원하지 않을 수 있다.
- 지역 통신업체 또는 정부 검열관은 국가 안보 또는 규정 준수라는 이유로 알려진 VPN 게이트웨이 내외로의 통화 또는 연결을 차단할 수 있다.
- 회사 VPN을 사용하여, VoIP 호출은 단지 회사 직원 및 지정된 허가된 사용자에게만 제한될 수 있으며, 금융 거래 및 비디오 스트리밍이 차단될 수 있으며, 야후, 구글 등과 같은 공공 이메일 서버에 대한 사적 이메일이 차단될 수 있고, 유튜브, 채팅 프로그램 또는 트위터와 같은 많은 웹 사이트는 회사 정책에 따라 차단될 수 있다.
- 불안정한 네트워크의 경우, VPN 운영자에 의해 수동으로 리셋될 때까지, VPN은 멈추어서 발신자의 디바이스에 연결된 영구 세션을 유지할 수 있다. 이는 후속의 연결 또는 값비싼 연결 비용에 대한 대역폭 손실로 이어질 수 있다.
네트워크 비교 - 도 49a에 도시된 "오버 더 탑" 또는 OTT 제공자에 의해 제공된 통신과 이미 도 48c에 도시된 애드혹에 연결하기 위해 공용 네트워크를 사용하는 통신 시스템을 비교하면, VPN 링크 자체 이외에도, 두 통신 시스템의 대부분은 거의 동일한 구성요소 및 연결을 갖고 있음을 신속히 폭로하고 있다. 구체적으로, 휴대폰(730), WiFi 무선 연결(746A), WiFi 기지국(731), 유선 연결(746B, 746C) 및 라우터(732)를 포함하는 발신자의 라스트 마일은, 두 실행에서 동일한 라스트 마일 연결성을 나타낸다. 유사하게, 상대방의 라스트 마일 상에서, 휴대폰(737), 휴대폰 연결(748C), 셀 기지국 및 타워(736), 유선 연결(748A, 748B) 및 라우터(735)는 인터넷 및 VPN 버전 모두에 대해 동일하다. 주요한 차이점은 공용 네트워크에서 VPN 호스트(733, 734) 사이의 보안 통신(747)을 갖는 VPN 터널(742)이 안전하지 않은 통신 연결(755)을 운반하는 서버/라우터(752, 754)에 의해 대체된다는 점이다. 다른 차이점은 OTT 통신에 있으며, 호출은 단계(750)에 기재된 바와 같이 즉시 사용할 수 있으며, 여기서 VPN을 사용하여 VPN을 설정하고 또한 호출 이전 및 이후에 VPN 세션을 종료하기 위해 추가 단계(740, 749)가 요구된다.
두 예에 있어서, 라스트 마일 연결은 예측할 수 없는 통화 QOS, 패킷 스니핑에 대한 노출, 및 사이버 공격 위험을 제공한다. 서버/라우터(752, 774)가 서로 상이한 로케일에서 상이한 ISP 에 의해 관리되기 때문에, 서버를 기존의 다른 클라우드, 즉 클라우드(751, 753)로 해석할 수 있다. 예를 들어, 구글, 야후, 아마존, 및 마이크로소프트는 상이한 클라우드로서 간주될 수 있으며, 예를 들어 "아마존 클라우드"는 모두 인터넷에 의해 연결되어 있다.
도 49b에 도시된 경쟁 네트워크 토폴로지, 피어 투 피어 네트워크 또는 PPN은 라우터 또는 ISP 가 아니라 PPN 에 의해 관리되는 패킷 라우팅을 갖는 다수의 피어로 구성된 네트워크를 포함한다. 피어 투 피어 네트워크가 수십 년 동안 하드웨어에 존재했지만, 인터넷 서비스 공급자의 제어, 비용, 및 규제를 피하는 수단으로 개념을 대중화한 것은 냅스터(Napster)였다. 음악 저작권 침해에 대한 미국 정부의 규제에 의해 소송이 제기되었을 때, 냅스터의 선구자들은 초기 OTT 통신업체 스카이프를 침입하는 우주선(ship)을 뛰어 넘었다. 그 당시 스카이프의 네트워크는 전통적인 OTT로부터 냅스터와 유사한 PPN으로 변환되었다.
PPN 동작에서 PPN 에 대해 로그인 연결을 형성하는 모든 디바이스는 PPN 에서 하나 이상의 노드가 된다. 예를 들어, 지리(761)에서 PPN 소프트웨어를 갖는 휴대폰(730)이 피어 투 피어 네트워크에 로그인하면, 이 지역의 다른 모든 연결된 디바이스는 네트워크의 일부가 된다. 하나의 디바이스에서 다른 디바이스로 전화를 걸면 다른 디바이스에서 PPN 에 연결된 다른 디바이스로 연결된다. 예를 들어, 휴대폰(730)이 그 PPN 연결을 사용하여 다른 PPN 연결된 디바이스, 예를 들어 휴대폰(768)을 호출한다면, 상기 호출은 두 당사자 사이의 PPN 에 물리적으로 위치된 임의의 디바이스(들)를 통한 돌아가는 경로를 따른다. 도시된 바와 같이, 휴대폰(730)으로부터 나오는 호출은 WiFi(731)에 의해 WiFi 기지국(731)을 통해 데스크탑(765A)에, 그 후 노트북(766A)에, 데스크탑(765B)에, 그 후 데스크탑(765C)에, 그리고 마지막으로 휴대폰 기지국 및 타워를 통해 휴대폰(768)에 연결된다. 이 방식으로 모든 라우팅은 PPN 에 의해 제어되었으며, 인터넷은 라우팅의 관리에 포함되지 않았다. 양 당사자가 활용하기 때문에, 네트워크에 연결하는 데 사용되는 PPN 소프트웨어는 VoIP 기반 음성 통신을 위한 애플리케이션으로서 동작한다.
휴대폰(730)이 세계의 반대편에 있는 비-PPN 디바이스 휴대폰(737)을 호출하려는 경우에, 라우팅은 반드시 일부 링크 상에, 특히 바다 또는 산맥을 가로질러 패킷을 전송하기 위해 인터넷을 포함할 수 있다. 지리(761)에서 라우팅의 제1 부분은 이전의 예와 유사한 방식으로 진행되어, 휴대폰(730)으로부터 시작하여 WiFi 기지국(731), 데스크탑(765A), 노트북(766A), 데스크탑(765B, 765C)을 통해 라우팅된다. 이 시점에서 노트북(766B)이 네트워크에 연결되어 있다면, 이를 통해 전화가 걸려올 것이고, 그렇지 않으면 휴대폰 기지국 및 타워(767)를 통해 휴대폰(768)으로 라우팅되고, 그 후 이를 앞으로 송신하기 전에 휴대폰 기지국 및 타워(767)로 되돌린다.
전화가 태평양을 횡단한다면, 컴퓨터 및 휴대폰은 대양을 가로질러 트래픽을 운반할 수 없으므로, 호출은 반드시 클라우드(763)의 인터넷 제3자 서버/라우터(770)까지, 그리고 제3자 서버/라우터와의 연결(747)을 통해 앞으로 라우팅된다. 그 후, 호출은 인터넷을 떠나고, 그리고 먼저 데스크탑(772)을 통해 지리(762)에서 PPN 에 들어가고, 이는 다시 WiFi(773)에, 노트북(776)에, 그리고 기지국(736)에 연결된다. WiFi(733)가 PPN 애플리케이션을 동작시키지 않기 때문에, WiFi(773)에 들어가는 실제 패킷은 유선 연결을 통해 휴대폰 기지국 및 타워(736)로 송신되기 전에, 태블릿(775) 또는 휴대폰(774)로 이동해야만 한다. 마지막으로, 휴대폰 통화(748C)는 휴대폰(737)에 연결되며, 이는 PPN 지원 디바이스가 아니다. 따라서 연결은 이것이 PPN 지리(762)를 빠져 나가기 때문에, PPN 에 대한 "콜 아웃"을 구성한다. 이 PPN 접근법을 사용하면, VPN 처럼, 먼저 PPN 로그인을 완료함으로써 단계(760)에 따라 PPN 네트워크에 호출 디바이스를 등록한다. 그 후, 호출은 단계(769)에 따라 PPN 어플리케이션을 사용하여 배치될 수 있다. PPN 접근법의 장점은 장거리에 대한 호출을 운반하는 데 하드웨어가 거의 또는 전혀 필요 없으며, 또한 PPN 에 연결되는 모든 디바이스가 업데이트하기 때문에, PPN 운영자는 상태, 로딩 및 대기 시간에 대해 PPN 운영자가 패킷의 라우팅을 결정하여 지연을 최소화할 수 있다.
이러한 접근법의 단점은 패킷이 잠재적인 보안 위협을 나타내고 또한 통화 지연 및 호출 QoS 상에 예측할 수 없는 충격을 갖는 많은 알 수 없는 노드를 포함하는 네트워크를 통과한다는 점이다. 따라서 스카이프를 제외하고는, 계층 3 에서 또는 그 이상에서 동작하는 피어 투 피어 네트워크는 패킷 교환형 통신 네트워크에서 일반적으로 사용되지 않는다.
애드혹 VPN 제공자, 인터넷 OTT 제공자, 및 PPN 피어 네트워크의 비교 요약은 아래처럼 대조된다.
네트워크 가상 사설 VPN 인터넷 OTT 피어 투 피어 PPN
노드 공공/호스트형 서버 공공 라우터/서버 PPN 사용자
노드 용량 알려진 기간시설 알려진 기간시설 혼합된, 미지의
클라우드 대역폭 보증됨 예측할 수 없음 예측할 수 없음
라스트 마일 BW 공급자 의존형 공급자 의존형 PPN 의존형
대기 시간 관리 불가 관리 불가 최선의 노력
네트워크 안정성 관리 불가 관리 불가, 중복 최선의 노력
호출 셋업 복합 로그인 불필요 로그인
사용자 신원 사용자 이름 전화번호 사용자 이름
VoIP QoS 가변 내지 좋음 가변 가변
클라우드 보안 암호화된 페이로드 전용 암호화되지 않음 암호화되지 않음
라스트 마일 보안 암호화되지 않음 암호화되지 않음 암호화되지 않음
스니프 가능 패킷 헤더(클라우드)
전체 패킷(라스트 마일)
전체 패킷 전체 패킷
도시된 바와 같이, VPN 및 인터넷은 고정된 기간 시설을 구성하지만, 피어 투 피어 네트워크의 노드는 로그인한 사람과 PPN 에 연결된 디바이스에 따라 변한다. 네트워크의 고속 장거리 연결, 예를 들어 대양과 산맥을 횡단하는 네트워크로서 이 표의 맥락에 정의된 클라우드 대역폭은, VPN의 경우에만 계약 상 보장되며, 그렇지 않으면 예측할 수 없다. 라스트 마일 대역폭은 인터넷 및 VPN 공급자 모두에 따라 로컬 공급자이지만, 그러나 PPN 에 대해서는 전적으로 누가 로그인했는지에 달려 있다.
대기 시간, 연속적으로 송신된 IP 패킷의 전파 지연은 OTT 및 VPN 에 대해 관리할 수 없는데, 그 이유는 공급자가 라스트 마일에서 라우팅을 제어하지는 않지만, 대신에 특별한 지리에서 당시에 온라인 상태인 노드 중에서 트래픽을 지향시키기 위해 최상의 노력을 사용하는 제한된 능력을 갖더라도, 로컬 텔코 또는 네트워크 공급자에 의존하기 때문이다. 마찬가지로, 네트워크 안정성을 위해, PPN은 네트워크를 유지하기 위해 트래픽을 재라우팅할 수 있지만, 그러나 로그인한 사람에 전적으로 의존한다. 다른 한편으로, 인터넷은 본질적으로 중복되어 있으며 전달을 보장하는 것이 확실하지만, 그러나 시기적절하지 않다. 애드혹 VPN 에 대한 네트워크 안정성은 VPN 호스트로의 연결에 권한이 부여된 노드 수에 따른다. 이들 노드가 오프라인으로 가면, VPN 이 무능력해진다.
통화 설정 관점에서, 인터넷은 항상 사용 가능하며, PPN은 전화를 걸기 전에 PPN 에 로그인하는 추가 단계가 필요하며, VPN은 복잡한 로그인 절차를 포함할 수 있다. 더욱이, 대부분의 사용자는 OTT 가 VPN 및 PPN 에 의해 사용되는 별도의 로그인 ID보다는 사용 용이성의 주요 이점으로 전화번호의 OTT 사용을 고려한다. 나열된 모두 3개의 네트워크는 가변형 VoIP QoS로 인해 어려움을 겪고 있으며, 일반적으로 상용 전화기술 통신업체보다 훨씬 뒤떨어져 있다.
보안상 관점에서, 3가지 옵션 모두는 판독 가능한 어드레스 및 페이로드를 갖는 패킷 스니핑에 완전히 노출된 라스트 마일에 의해 나쁘다. VPN은 클라우드 연결의 암호화를 제공하지만, 그러나 VPN 호스트의 IP 어드레스를 노출시킨다. 따라서 도시된 네트워크 옵션은 안전하다고 간주되지 않는다. 따라서 암호화는 다양한 애플리케이션에 의해 해킹 및 사이버 공격을 방지하도록 계층 6 프로토콜 또는 계층 7 애플리케이션 자체의 매립된 부분으로 사용된다.
암호화에 대한 과잉 신뢰 - IP 패킷을 암호화하거나 VPN을 설정하는 데 사용되는지의 여부와는 관계없이, 오늘날의 네트워크 보안은 거의 전적으로 암호화에만 의존하며 또한 최신 패킷 교환형 기반 통신 네트워크에 하나의 약점을 나타내고 있다. 예를 들어, RSA 암호화를 공격하는 방법에 대해 많은 연구가 수행되었다. 소수를 큰 크기로 제한하는 것은 무차별적인 힘 방법을 사용하여 해독 D 키 코드를 파괴할 위험을 크게 줄이는 반면에, 다항식 요소 방법은 보다 작은 소수 기반 키에 기초하여 키를 균열시키는 데 성공적으로 시연되었다. "양자 컴퓨팅"의 진화는 궁극적으로 합리적인 사이버 공격 시간에 RSA 기반 및 다른 암호화 키를 파괴하는 실용적인 방법으로 이어질 것이라는 우려가 존재한다.
이전에 존재했던 코드 파괴의 위험성을 극복하기 위해, 2001년 US NIST 에 의해 채택된 "진보된 암호화 표준"이나 AES 암호와 같은 새로운 알고리즘 및 "더 큰 키" 암호화 방법이 등장했다. 라인달(Rijndael) 암호에 기초하여, 대체-치환 네트워크(substitution-permutation network)로서 알려진 설계 원리는, 상이한 키 및 블록 크기를 사용하여 문자 대체 및 순열을 조합한다. 그 현재의 화신에 있어서, 알고리즘은 128, 192 비트 및 256 비트의 가변 길이를 포함하는 키를 갖는 128 비트의 고정 블록 크기를 포함하며, 입력 파일 변환에 사용된 대응하는 반복 횟수는 10, 12, 및 14 사이클이다. 실제적 문제로서, AES 암호는 소프트웨어 또는 하드웨어에서 키의 크기와는 관계없이 효율적이고 신속하게 실행될 수 있다. 암호화 토착어에서, 256b 키를 사용하는 AES 기반 암호화는 AES256 암호화로서 지칭된다. 512b 키를 사용하는 AES512 암호화도 사용할 수 있다.
새로운 세대가 암호 기술을 향상시켜 보다 나은 암호화 방법을 만들고 그리고 이들을 신속하게 깨뜨리는 반면에, 이익을 추구하는 사이버 범죄자는 단순히 컴퓨팅을 사용하여 암호화된 파일을 파괴하기보다는 그 표적에 자주 집중한다. 이미 기재된 바와 같이, 패킷 스니핑과 포트 심문을 사용하여, 사이버 해적은 대화, 회사 서버 또는 심지어 VPN 게이트웨이에 대한 중요한 정보를 얻을 수 있다. 사이버 프로파일링에 의해, 네트워크 자체를 공격하기보다는 회사의 CFO 또는 CEO의 개인용 컴퓨터, 노트북 및 휴대폰에 대한 사이버 공격을 시작하는 것이 더 쉬울 수도 있다. 매립형 링크를 열었을 때 멜웨어 및 스파이웨어를 자동으로 설치하는 고용자에게 이메일을 보내는 것은 방화벽 보안을 완전히 우회하는데, 그 이유는 이들이 필수적으로 연결하여 동작해야 하는 "내부"로부터 네트워크에 들어가기 때문이다.
데이터가 변경 없이 즉 정적으로 네트워크를 통해 이동한다면, 암호화를 파괴할 가능성도 높아진다. 예를 들어, 도 50의 네트워크에서, 패킷(790, 792, 794, 799)의 하부 데이터는 패킷이 네트워크를 통해 이동함에 따라 변경되지 않는다. 도시된 각각의 데이터 패킷은 이것이 생성되었을 때 그 본래의 순서대로 변경되지 않은 시간 또는 페이지로 순차적으로 배열되는 일련의 데이터 또는 사운드를 포함한다. 데이터 패킷의 콘텐트가 텍스트라면, 시컨스 1A-1B-1C-1D-1E-1F 에서 암호화되지 않은 평문 텍스트 파일을 읽는 것은 코뮤니케 번호 "1"에 대한 "읽기 쉬운"텍스트로 나타날 것이다. 데이터 패킷의 콘텐츠가 오디오라면, 시컨스 1A-1B-1C-1D-1E-1F 에서 암호화되지 않은 평문 파일을 변환, 즉 "재생"하는 것은 본질적으로 소프트웨어 기반 D/A 변환기인 대응의 오디오 코덱을 통해 오디오 파일 번호 "1"에 대한 소리로 나타날 것이다.
어느 경우나, 본 발명 전체에 걸쳐, 고정된 크기 박스로 표현되는 각각의 데이터 슬롯은 규정된 수의 비트, 예를 들어 2 바이트(2B) 길이를 포함한다. 슬롯당 정확한 비트 수는, 네트워크에서의 모든 통신 노드가 각 데이터 슬롯의 크기를 아는 한 유연하다. 각 데이터 슬롯에는 오디오, 비디오 또는 텍스트 데이터가 포함되어 있으며, 도면에서 번호 뒤에 문자가 표기되어 있다. 예를 들어, 도시된 바와 같이, 데이터 패킷(790)의 제1 슬롯은 숫자 "1"이 지정 통신 # 1을 나타내고 문자 "A"가 통신 # 1의 데이터의 제1 부분을 나타내는 콘텐츠(1A)를 포함한다. 마찬가지로, 데이터 패킷(790)의 제2 슬롯은 숫자 "1"이 이것이 동일한 통신 # 1의 일부임을 나타내는 문자 "1B"를 포함하고 또한 문자 "B"는 1A의 순차적으로 이어지는 통신 # 1 에서의 데이터의 제2 번째 부분을 나타내는 콘텐트(1B)를 포함한다.
예를 들어, 동일한 데이터 패킷이 가상으로 포함된 콘텐츠 "2A"를 포함한다면, 데이터는 상이한 통신에서, 특히 통신 # 1 과는 관계 없는 통신 # 2 에 대한 제1 패킷 "A"를 나타낸다. 균질한 통신을 포함하는 데이터 패킷, 예를 들어 통신 # 1에 대한 모든 데이터는 상이한 통신을 혼합하는 것보다 분석 및 판독하기가 더 쉽다. 적절한 순서로 순차적으로 배열된 데이터는 이것이 오디오, 텍스트, 그래픽, 사진, 비디오, 실행 가능한 코드 등인지의 여부와는 관계없이, 사이버 공격자가 데이터의 특성을 해석하는 것을 용이하게 한다.
더욱이, 도시된 예에 있어서, 패킷의 소스 및 목적지 IP 어드레스가 일정하게 유지되기 때문에, 즉 들어가거나 또는 나가는 게이트웨이 서버(21A, 21F)와 동일한 형태로 네트워크를 통한 전송 중 패킷이 바뀌지 않은 상태로 존재하는 경우, 하부의 데이터가 바뀌지 않기 때문에, 해커는 데이터 패킷을 가로챌 더 많은 기회를 갖고, 또한 파일을 분석 및 개봉하거나 또는 대화를 청취할 수 있는 더 좋은 기회를 가질 수 있다. 단순한 전송 및 1차원 보안, 즉 보호를 위한 암호화에만 의존하는 것은 사이버 공격의 위험을 증가시키는데, 그 이유는 패킷 교환형 네트워크와 같은 지나치게 단순화된 인터넷의 사용에서 성공의 가능성이 더 높기 때문이다.
실시간 네트워크 및 연결된 디바이스 보안
오늘날의 패킷 교환형 네트워크를 괴롭히는 과잉의 보안 취약점을 해결하면서 전화, 비디오 및 데이터 통신의 서비스 품질(QoS)을 향상시키기 위해, IP 패킷 라우팅 제어에 대한 새롭고 혁신적인 체계적인 접근법이 요구되며, 이종 기술을 포함하는 세계적인 네트워크를 관리하는 것은 동시에 종단 간 보안을 지원한다. 이러한 독창적인 패킷 교환형 네트워크의 목표는 이하의 기준을 포함하는 것이다.
1. 네트워크 전체를 통해 실시간 음성, 비디오 및 데이터 트래픽 라우팅을 동적으로 관리하는 단계를 포함하는 글로벌 네트워크 또는 장거리 통신업체의 보안 및 QoS를 보장한다.
2. 통신 네트워크의 라스트 마일에서 "로컬 네트워크 또는 텔코"의 보안 및 QoS를 보장한다.
3. 보안되지 않은 라인을 통한 보안 통신 제공을 포함하여, 통신 네트워크의 "라스트 링크"의 보안 및 QoS를 보장한다.
4. 권한이 없거나 위조된 액세스 또는 사용을 방지하기 위해, 통신 디바이스의 보안을 확인하고 사용자를 인증한다.
5. 무단 액세스를 방지하기 위해, 디바이스 또는 온라인 네트워크 또는 클라우드 저장소에 데이터를 저장하는 보안 수단을 촉진시킨다.
6. 재무, 개인, 의료 및 생체 인식 데이터 및 기록을 포함하는 모든 비공개 개인 정보의 보안 및 프라이버시 보호를 제공한다.
7. 온라인 뱅킹 및 쇼핑, 신용카드 및 전자 지불(e-pay)을 포함하는 모든 금융 거래의 보안 및 개인 정보 보호를 제공한다.
8. M2M(Machine-to-Machine), V2V(Vehicle-To-Vehicle) 및 V2X(Vehicle-to-Infrastructure) 통신을 포함하는 처리 및 정보 교환에서 보안, 프라이버시 보호 및 필요에 따라 익명성을 제공한다.
전술한 목표 중에서, 본 발명 내에 포함된 발명적인 사안은 항목 # 1 에 기재된 제1 토픽, 즉 "실시간 음성, 비디오, 및 네트워크를 통한 데이터 트래픽 라우팅의 동적 관리를 포함하는 글로벌 네트워크 또는 장거리 통신업체의 보안 및 QoS를 보장하는 것에 관한 것이다. 이 토픽은 실시간 통신 성능을 희생시키지 않으면서 네트워크 또는 클라우드 보안을 달성하는 것으로서 간주될 수 있다.
용어정의
문맥이 달리 요구하지 않는 한, 보안 동적 네트워크 및 프로토콜의 기재에 사용된 용어는 이하의 의미를 갖는다.
익명 데이터 패킷: 본래의 본래 또는 최종 목적지에 대한 정보가 부족한 데이터 패킷.
해독: 데이터 패킷을 암호문으로부터 평문으로 변환하는 데 사용되는 수학적 동작.
DMZ 서버: 선택기, 시드 생성기, 키 생성기 및 기타 공유 비밀을 저장하는 데 사용되는 SDNP 네트워크 또는 인터넷으로부터 직접 액세스할 수 없는 컴퓨터 서버.
동적 암호화/해독: 데이터 패킷이 SDNP 네트워크를 횡단할 때, 동적으로 변하는 키에 의존하는 암호화 및 해독.
동적 혼합: 혼합 알고리즘(분할 알고리즘의 역기능)이 혼합 데이터 패킷이 생성될 때 시간, 상태 및 영역과 같은 상태에 기초하여 시드의 기능으로 동적으로 변하는 혼합 프로세스.
동적 스크램블링/언스크램블링: 데이터 패킷이 생성된 시간 또는 생성된 영역처럼, 상태의 함수로서 동적으로 변하는 알고리즘에 의존하는 스크램블링 및 언스크램블링.
동적 분할: 데이터 패킷이 다중 서브패킷으로 분할될 때 시간, 상태 및 영역과 같은 상태에 기초하는 시드의 기능으로서 분할 알고리즘이 동적으로 변하는 분할 프로세스.
암호화: 데이터 패킷을 평문으로부터 암호문으로 변환하는 데 사용되는 수학 동작.
단편화된 데이터 전송: SDNP 네트워크를 통해 분할되고 혼합된 데이터의 라우팅.
정크 데이터 삭제[또는 "디정킹(De-junking)"]: 본래의 데이터를 복원하거나 또는 데이터 패킷의 본래 길이를 복구하기 위해, 데이터 패킷으로부터 정크 데이터의 제거.
정크 데이터 삽입[또는 "정킹(juncking)"]: 실제 데이터 콘텐트를 난독화하기 위해 또는 데이터 패킷의 길이를 관리하기 위해, 데이터 패킷 내에 무의미한 데이터의 의도적인 도입.
키: 키를 생성하기 위해 비밀 알고리즘을 사용하는 키 생성기 내에 시간과 같은 상태를 입력함으로써 생성되는 위장된 디지털 값. 키는 선택기로부터 패킷의 데이터를 암호화하는 알고리즘을 선택하는 데 사용된다. 키는 공개 또는 비 보안 라인에 대한 상태에 관한 정보를 안전하게 통과시키는 데 사용될 수 있다.
키 교환 서버: 네트워크 운영자 스파이행위의 가능성을 방지하기 위해, 공개 키 암호화 키를 클라이언트에, 선택적으로 대칭 키 암호화를 사용하는 서버에, 특히 클라이언트 관리형 키 관리, 즉 클라이언트 기반 종단 간 암호화에 사용되는 SDNP 네트워크 운영자와는 독립적으로 호스트된 종종 제3자의 컴퓨터 서버.
라스트 링크: 클라이언트의 디바이스와 이것이 통신하는 네트워크에서의 제1 디바이스, 전형적으로 라디오 타워, WiFi 라우터, 케이블 모뎀, 셋톱박스 또는 이더넷 연결 사이의 네트워크 연결.
라스트 마일: 라스트 링크를 포함하여, SDNP 게이트웨이와 클라이언트 사이의 네트워크 연결.
혼합: 인식되지 않은 콘텐트를 갖는 하나의 긴 데이터 패킷(또는 일련의 서브패킷)을 생성하기 위해, 상이한 소스와 데이터 타입의 조합. 일부 경우에, 이전의 분할된 데이터 패킷은 본래의 데이터 내용을 복구하도록 혼합된다. 혼합 동작에는 정크 데이터 삽입 및 삭제와 파싱을 포함할 수도 있다.
파싱: 저장 또는 전송을 위해 데이터 패킷이 더 짧은 서브패킷으로 파괴되는 수치 동작.
스크램블링: 데이터 패킷에서 데이터 세그먼트의 순서 또는 시컨스가 그 자연적인 순서로부터 인식 불가능한 형태로 변경되는 동작.
분할: 데이터 패킷(또는 일련의 직렬 데이터 패킷)이 다중 목적지로 라우팅되는 다중 서브패킷으로 분할되는 동작. 분할 동작은 정크 데이터 삽입 및 삭제를 포함할 수도 있다.
소프트스위치(SoftSwitch): 전기통신 스위치 및 라우터의 기능을 수행하는 실행 가능한 코드를 포함하는 소프트웨어.
SDNP : 본 발명에 따라 제조된 하이퍼-보안 통신 네트워크를 의미하는 "보안 동적 네트워크 및 프로토콜"의 약자.
SDNP 관리 서버: 실행 가능한 코드 및 공유 비밀을 전 세계 또는 지정 영역의 SDNP 서버에 배포하는 데 사용되는 컴퓨터 서버.
SDNP 브릿지 노드: 하나의 SDNP 클라우드를 상이한 영역 및 보안 자격을 갖는 다른 클라우드에 연결하는 SDNP 노드.
SDNP 클라이언트 또는 클라이언트 디바이스: 일반적으로 네트워크의 라스트 마일을 통해 연결하는 SDNP 클라우드에 연결하기 위해, SDNP 애플리케이션을 동작시키는 네트워크 연결된 디바이스. 전형적으로 휴대폰, 태블릿, 노트북, 데스크탑 또는 IoT 디바이스.
SDNP 클라우드: SDNP 통신 노드 동작을 수행하기 위해, 소프트스위치 실행 가능한 코드를 동작시키는 상호 연결된 SDNP 서버의 네트워크.
SDNP 게이트웨이 노드: SDNP 클라우드를 SDNP 라스트 마일 및 클라이언트에 연결하는 SDNP 노드. SDNP 게이트웨이 노드는 적어도 2개의 영역(SDNP 클라우드의, 그리고 라스트 마일의)에 대한 액세스를 요구한다.
SDNP 미디어 노드: 암호화/해독, 스크램블링/언스크램블링, 혼합/분할, 태깅(tagging) 및 SDNP 헤더 및 서브 헤드 생성을 포함하여, 시그널링 기능을 수행하는 시그널링 서버 또는 다른 컴퓨터로부터의 명령에 따라 특별한 식별 태그로 들어오는 데이터 패킷을 처리하는 소프트스위치 실행 가능한 코드. SDNP 미디어 노드는 지정 태그를 갖는 들어오는 데이터 패킷을 식별하고 새로 생성된 데이터 패킷을 그 후 목적지로 전송하는 역할을 한다.
SDNP 미디어 서버: 이중 채널 및 3중 채널 통신에서 SDNP 미디어 노드의 기능을 수행하고 또한 단일 채널 통신에서 SDNP 시그널링 노드 및 SDNP 네임 서버 노드의 동작을 수행하는 소프트스위치를 호스트하는 컴퓨터 서버.
SDNP 네임 서버: 3채널 통신에서 SDNP 네임 서버 노드의 기능을 수행하는 소프트스위치를 호스트하는 컴퓨터 서버.
SDNP 네임 서버 노드: SDNP 클라우드에 연결된 모든 SDNP 디바이스의 동적 목록을 관리하는 소프트스위치 실행 가능한 코드.
SDNP 네트워크: SDNP 클라우드뿐만 아니라, 라스트 링크 및 라스트 마일 통신을 포함하는 클라이언트로부터 클라이언트로 확장하는 전체 하이퍼 보안 통신 네트워크.
SDNP 노드: 컴퓨터 서버 또는 대안적으로 SDNP 네트워크에 연결된 하드웨어 디바이스 상에서 동작하는 소프트웨어 기반 "소프트스위치"를 포함하며, 미디어 노드, 시그널링 노드 또는 네임 서버로서 SDNP 노드로서 기능하는 SDNP 통신 노드.
SDNP 서버: SDNP 미디어 서버, SDNP 시그널링 서버 또는 SDNP 네임 서버를 포함하며 또한 SDNP 노드로서 동작하도록 적용 가능한 소프트스위치 기능을 호스트하는 컴퓨터 서버.
SDNP 시그널링 노드: 당사자 사이의 통화 또는 통신을 시작하고, 발신자 기준에 기초하여 단편화된 데이터 전송을 위한 다중 루트의 전부 또는 일부를 결정하여, 들어오고 나가는 데이터 패킷을 어떻게 관리할지를 SDNP 미디어에 명령하는 소프트스위치 실행 가능한 코드.
SDNP 시그널링 서버: 이중 채널 및 3중 채널 SDNP 통신에서 SDNP 시그널링 노드의 기능을 수행하고, 또한 이중 채널 통신에서 SDNP 네임 서버 노드의 임무를 수행하는 소프트스위치를 호스트하는 컴퓨터 서버.
보안 설정: 네트워크 시간과 같이 끊임없이 변화하는 입력 상태와 함께 비밀 알고리즘을 사용하여 시드 생성기 또는 키 생성기에 의해 생성되며, 따라서 공개 또는 비 보안 라인을 통해 안전하게 전송될 수 있는 시드 및 키와 같은 디지털 값.
시드: 시간과 같은 상태를 비밀 알고리즘을 사용하여 시드를 생성하는 시드 생성기에 입력함으로써 생성되는 위장된 디지털 값. 시드는 선택기로부터 패킷의 데이터를 스크램블하거나 분할하기 위해 알고리즘을 선택하는 데 사용된다. 시드는 공개 또는 비 보안 라인을 통해 상태에 관한 정보를 안전하게 통과시키는 데 사용될 수 있다.
선택기: 공유 비밀의 일부이며 또한 패킷이나 패킷을 스크램블링, 언스크램블링, 암호화, 해독, 분할 또는 혼합하기 위해 특별한 알고리즘을 선택하도록 시드 또는 키와 함께 사용되는 가능한 스크램블링, 암호화 또는 분할 알고리즘의 목록 또는 표.
공유 비밀: 시드 생성기, 키 생성기, 영역 정보에 의해 사용되는 알고리즘 및 SDNP 네트워크 또는 인터넷을 통해 액세스할 수 없는 DMZ 서버에 로컬로 저장된 알고리즘 셔플링 프로세스뿐만 아니라, 스크램블링/언스크램블링, 암호화/해독 및 혼합/분할 알고리즘의 표 또는 선택기를 포함하여, SDNP 노드 동작에 관한 기밀 정보.
상태: 시드 또는 키와 같은 보안 설정을 동적으로 생성하거나 또는 혼합, 분할, 스크램블링 및 암호화와 같은 지정한 SDNP 동작을 위한 알고리즘을 선택하는 데 사용되는 위치, 영역 또는 네트워크 시간과 같은 입력.
시간: SDNP 네트워크를 가로질러 통신을 동기화하는 데 사용되는 범용 네트워크 시간
언스크램블링: 스크램블된 데이터 패킷의 데이터 세그먼트를 그 본래의 순서 또는 순차적으로 복원하는 프로세스. 언스크램블링은 스크램블링의 역기능이다.
영역: 공통 보안 자격 및 공유 비밀을 공유하는 지정 상호 연결된 서버의 네트워크. 라스트 마일 연결은 SDNP 클라우드에서 이들로부터 별도의 영역을 포함한다.
보안 동적 네트워크 및 프로토콜(SDNP) 설계
실시간 패킷 대기 시간을 최소화하고 안정적인 호출 연결성을 보장하며 또한 음성 통신 및 비디오 스트리밍의 최고 무결성을 전달하면서 패킷 교환형 통신의 사이버 공격 및 해킹을 방지하기 위해, 공개된 보안 동적 네트워크 및 프로토콜 또는 SDNP 가 다음을 포함하는 많은 지침 원칙에 따라 설계되었다.
- 실시간 통신은 최저 대기 시간 경로를 사용하여 항상 발생해야 한다.
- 데이터 패킷의 무단 검사 또는 스니핑은 패킷의 출처, 진행 위치 또는 그 내부에 있는 것에 대한 내용을 제공하지 않아야 한다.
- 데이터 패킷 페이로드는 역동적으로 재암호화해야 한다. 즉, 임의의 합리적인 시간에 해킹될 위험 없이, 상이한 암호화 알고리즘을 사용하여 해독된 후 다시 암호화되어야 한다.
- 이들이 해독된 후라도, 모든 데이터 패킷 페이로드는 다중 대화의 동적 스크램블된 혼합과 정크 패킷 필러와 혼합된 무관한 데이터를 포함하는 이해할 수 없는 페이로드를 여전히 포함한다.
상기 지침의 실행은 다양한 실시예에서 이하의 일부 또는 전부를 포함하는 다양한 독창적인 발명적인 방법, 기능, 특징 및 실행을 포함한다
- SDNP는 텔코, 즉 전기통신 시스템, 인터넷을 통해 액세스할 수 없는 독점적인 명령 및 제어 소프트웨어를 사용하여 실현된 소프트스위치 기능을 포함하는 하나 또는 그 이상의 전용 클라우드를 사용한다.
- 모든 인트라 클라우드 통신은 IP 어드레스가 아니라 SDNP 어드레스 및 동적 포트(즉 독점 NAT 어드레스)에 기초하는 독점적인 클라우드 내에서 전용 SDNP 패킷 라우팅을 사용하여 발생한다. SDNP 어드레스는 인터넷 또는 SDNP 클라우드 외부에서 사용할 수 없거나 라우팅할 수 없다.
- SDNP 네트워크는 사용 가능한 최저 대기 시간 경로를 통해 모든 실시간 통신을 지속적으로 식별하고 동적으로 라우팅한다.
- 실시간 통신은 클라우드 간 및 라스트 마일 통신 및 일반적으로 보이지 않는 어드레스로 단일 홉 라우팅을 사용하는 경우를 제외하고는, SDNP 클라우드 외부 또는 인터넷을 통해 라우팅되지 않는다.
- 데이터 패킷에 포함된 라우팅 데이터는, 2개의 인접한 디바이스 사이에서 단일 홉에 대한 라우팅을 식별하여, 마지막 및 다음 서버의 SDNP 또는 IP 어드레스만 식별한다
- 발신자와 수신자의 전화번호 또는 IP 어드레스, 즉 클라이언트의 각 소스 및 목적지 어드레스가 IP 패킷 헤더에 존재하지 않으며 또한 암호화된 페이로드에 존재하지도 않는다
- 명령 및 제어 관련 공유 비밀은 인터넷을 통해 액세스할 수 없는 보안 DMZ 서버에 설치된 시스템 소프트웨어에 존재한다.
- SDNP 패킷 통신은 3개의 독립적인 채널, 즉 SDNP 클라우드 내의 요소를 식별하는 데 사용되는 "네임 서버", 콘텐트 및 데이터 라우팅에 사용되는 "미디어 서버", 그리고 패킷 및 호출 명령 및 제어에 사용되는 "시그널링 서버"를 통해 발생할 수 있다.
- 키 및 수치 시드(필요에 따라)와 함께 라우팅 정보는, 호출 또는 코뮤니케 전에 독립적인 시그널링 채널을 통해 모든 참여 미디어 서버에 공급되며 콘텐트는 공급되지 않는다. 상기 시그널링 서버는 미디어 서버에 네트워크를 횡단하는 패킷의 마지막 및 다음 목적지만을 공급한다.
- 미디어 패킷은 호출, 문서, 텍스트 또는 파일의 일부만을 나타내는 단편화된 데이터를 포함하며, 다른 소스 및 상이한 타입의 단편화된 데이터를 포함하는 다른 패킷과 동적으로 혼합되고 그리고 재혼합된다.
- 미디어 및 콘텐트 관련 패킷으로부터 시그널링 서버 관련 통신을 분리시키는 것을 포함하여, 제1 및 라스트 마일 통신을 보호하기 위해, 특수 보안 방법이 사용된다.
- 패킷 전송은 시그널링 패킷, 명령 및 제어 패킷, 데이터 패킷, 애플리케이션 파일, 시스템 파일, 패킷 손실에 민감하거나 또는 대기 시간이 TCP 전송을 이용하는 다른 파일과 함께, 강화된 UDP 에 기초하여 음성 및 실시간 비디오 또는 스트림을 갖는 콘텐트 타입 의존형이다.
- 특수 보안 및 인증 방법은 디바이스가 복제품이 아니라 실제 클라이언트인지를 확인하고 또한 통신하는 사람이 사기꾼이 아니라 디바이스의 진정한 소유자임을 인증하는 데 사용된다.
낮은 대기 시간 및 높은 QoS로 보안 통신을 보장하기 위해, 기재된 "보안 동적 네트워크 및 프로토콜" 또는 SDNP는 이하를 포함하는 독창적인 "동적 메시"네트워크를 이용한다.
- 최소한의 대기 시간으로 동적 적응형 다중 경로 및 메시형 라우팅
- 동적 패킷 스크램블링
- 패킷 분할, 혼합, 파싱 및 정크 비트 패킷 필러(filler)를 사용하는 동적 단편화.
- 네트워크 또는 클라우드 전반에 걸친 동적 인트라-노드 페이로드 암호화.
- 어드레스 위장 및 알아야 할 라우팅 정보를 갖는 동적 네트워크 프로토콜.
- 시그널링, 명령 및 제어, 및 네트워크 어드레스로부터 미디어 및 콘텐트를 분리하는 다중 채널 통신
- 데이터 타입 지정한 특성 및 상황별 라우팅에 의한 동적 적응형 실시간 전송 프로토콜.
- 사용자 키 관리에 의한 클라이언트 암호화된 페이로드의 지원.
- 혼잡한 네트워크에서 높은 QoS를 위한 경량 오디오 코덱.
기재된 바와 같이, SDNP 통신은 데이터 패킷을 동적으로 라우팅하기 위해 다중 경로 및 메시형 통신에 의존한다. 본 발명에 따른 SDNP 통신에서, 인터넷 OTT 및 VoIP 통신에 사용되는 대조적인 단일 루트 패킷 통신과는 달리, 데이터 패킷의 콘텐츠는 공통 소스 또는 발신자로부터의 정보를 포함하는 일관적인 패킷에 의해 직렬로 전달되지 않지만, 그러나 다중 소스 및 발신자로부터 나타나는 콘텐트를 동적으로 혼합 및 재혼합하는 단편화된 형태로, 여기서 상기 데이터는 데이터, 콘텐트, 음성, 비디오 및 유사한 데이터 타입의 파일의 불완전한 부분을 정크 데이터 필러로 집계한다. 데이터 단편화 및 전송의 기재된 실현의 이점은 암호화되지 않은 및 언스크램블된 데이터 패킷이 관련 없는 데이터 및 데이터 타입의 조합을 나타내기 때문에 해석하기가 거의 불가능하다는 점이다.
단편화된 패킷 혼합 및 패킷 스크램블링과 패킷 스크램블링 및 동적 암호화와 조합함으로써, 이들 동적으로 암호화된, 스크램블된, 단편화된 데이터의 하이브리드화된 패킷은 공유 비밀, 키, 수치 시드, 데이터를 생성, 패킷, 및 동적으로 재패킷하는 데 사용되는 시간 및 상태 변수가 없는 임의의 당사자 또는 관찰자에게 전혀 이해할 수 없는 무의미한 패킷을 포함한다
더욱이, 각 패킷의 단편화된 콘텐츠, 및 이를 생성하는 데 사용된 비밀은 패킷이 새로운 단편과 그리고 수정된 시드, 키, 알고리즘 및 암호와 같은 새로운 보안 규정으로 재구성되기 전에, 불과 몇 초만 유효하다. 사이버 해적이 상태 의존형 SDNP 데이터 패킷을 파괴하고 개봉할 수 있는 제한된 주기는 SDNP 보안을 더욱 향상시켜, 1초당 10만 건의 처리 기간이 필요하며, 이를 파괴하는 시간보다 큰 12배의 도전 과제가 필요하다.
전술한 방법의 조합은 정적 암호화로부터 얻을 수 있는 보안을 훨씬 넘어선 다차원 보안을 촉진시킨다. 따라서 기재된 보안 동적 네트워크 및 프로토콜은 여기에서는 "하이퍼-보안"네트워크로서 지칭된다.
데이터 패킷 스크램블링 - 기재된 발명에 따라, 패킷 교환형 네트워크를 통한 보안 통신은 해킹을 방지하고 보안을 보장하기 위해 여러 요소에 의존하며, 그 중 하나는 SDNP 패킷 스크램블링을 포함한다. SDNP 패킷 스크램블링은 데이터 세그먼트를 순서 없이 재배열하여, 정보를 이해할 수 없게 하고 쓸모없게 한다. 도 51a에 도시된 바와 같이, 스크램블링 동작(924)을 통해 처리된 스크램블되지 않은 데이터 패킷, 즉 데이터 패킷(923)은 스크램블된 데이터 패킷(925)으로 나타난다. 스크램블링 동작은 임의의 알고리즘, 수치 방법, 또는 시컨싱 방법을 사용할 수 있다. 알고리즘은 정적 방정식을 나타낼 수 있으며, 또는 스크램블링이 발생한 시간(920) 및 시드 생성기(921)에 의해 생성된 수치 시드(929)와 같은 "상태"에 기초한 동적 변수 또는 수치 시드를 포함할 수 있으며, 이는 스크램블링 시에 시간(920)과 같은 상태에 의존하는 알고리즘을 사용하여 시드(929)를 발생시킬 수 있다. 예를 들어, 각 날짜가 단조롭게 오름차순으로 고유의 숫자로 변환된다면, 모든 시드(929)는 고유하다. 시간(920) 및 시드(929)는 지정한 알고리즘을 선택하기 위해 사용될 수 있으며, 또는 이용 가능한 스크램블링 방법의 목록으로부터, 즉 스크램블링 알고리즘(922)으로부터 선택된 지정한 스크램블링 동작(924)을 선택하거나 계산하는 데 사용될 수도 있다. 데이터 흐름도에서, 여기에 기호(926)로 도시된 바와 같이, 개략적인 또는 기호적인 표현을 사용하여 이 패킷-스크램블링 동작 및 시컨스를 도시하는 것이 편리하다.
도 51b에 도시된 언스크램블링 동작은 스크램블링 동작(924)의 역기능, 특히 언스크램블링 동작(927)을 도시하며, 여기서 스크램블된 데이터 패킷(925)을 생성하는 데 사용된 상태 또는 시간(920) 및 대응하는 시드(929)는 언스크램블된 데이터, 특히 언스크램블된 데이터 패킷(923)을 되돌리는 데 재사용된다. 패킷 스크램블링이 처음 발생했을 때 사용된 것과 동일한 상태 또는 시간(920)을 사용하면, 스크램블링 알고리즘 목록(922)로부터 선택된 바와 같이, 스크램블링 동작(927)에서 동일한 스크램블링 방법이 다시 이용되어야만 한다. 스크램블링 알고리즘 목록(922)은 "스크램블링"이라는 용어를 참고하며, 동일한 알고리즘 표는 "언스크램블링"을 수행하는 데 필요한 역기능을 식별하고 선택하는 데 사용되며, 즉 스크램블링 알고리즘 목록(922)은 데이터 패킷을 스크램블링하고 또한 데이터 패킷을 언스크램블하는 데 필요한 정보를 포함한다. 두 기능이 역순으로 수행되는 동일한 단계를 포함하기 때문에, 목록(922)은 "스크램블링/언스크램블링"알고리즘 목록(922)으로서 이름을 바꿀 수 있다. 그러나 명확함을 위해, 상기 표는 기능에 의해서만 표시되고, 반 기능으로는 표시되지 않는다.
언스크램블링 동작(927)을 실행하기 위해 선택된 스크램블링 알고리즘이 패킷 스크램블링에 사용된 본래의 알고리즘과 일치하지 않거나, 또는 시드(929) 또는 상태 또는 시간(920)이 발생한 타임 스크램블링과 일치하지 않으면, 언스크램블링 동작은 본래의 언스크램블된 데이터 패킷을 복구하는 것을 실패할 것이며, 그리고 상기 패킷 데이터가 손실될 것이다. 데이터 흐름도에 있어서, 여기에 기호(928)로 도시된 바와 같이, 개략적인 또는 기호적인 표현을 사용하여 이 패킷 언스크램블링 프로세스 및 시컨스를 설명하는 것이 편리하다.
기재된 발명에 따라, 본래의 프로세스와 반대 순서로 단계를 반복하는 것을 의미하는 가역적인 프로세스가 각각의 데이터 세그먼트를 주어진 데이터 패킷에서 그 본래의 그리고 적절한 위치로 복귀시키는 한, 많은 알고리즘이 스크램블링 동작을 수행하는 데 사용될 수 있다. 수학적으로, 허용 가능한 스크램블링 알고리즘은 가역적인 알고리즘이며, 즉 함수 F(A)는 반-함수(anti-function) [F-1(A)]를 갖거나 또는 대안적으로 변형이 대응의 반-함수를 가지며,
F-1[F(A)] = A
함수(F)에 의해 처리된 데이터 파일, 시컨스, 문자 스트링, 파일 또는 벡터(A)는 반-함수(F-1)를 사용하는 후속 처리에 따라 값 또는 시컨스에서 손상되지 않은 본래의 입력(A)을 복귀시킨다는 것을 의미한다.
이러한 가역기능의 예는 미러링(mirroring) 및 위상 시프트 알고리즘을 포함하는 도 51c에 도시된 정적 스크램블링 알고리즘에 의해 도시된다. 미러링 알고리즘에 있어서, 데이터 세그먼트는 미러링 프로세스의 모듈 또는 "mod"에 의해 정의된 대칭선의 둘레에서 다른 데이터 세그먼트와 거울상으로서 스와핑된다. 도시된 바와 같은 mod-2 미러링에 있어서, 본래의 입력 데이터 패킷(930)의 매 2개의 데이터 세그먼트가 교환되고, 즉 1A 및 1B는 제1 및 제2 데이터 세그먼트 사이의 중심에 있는, 제3 및 제4 데이터 세그먼트 사이의 중심에 있는 대칭선을 갖는, 또는 수학적으로 1.5th, 3.5th, 5.5th, ..., (1.5 + 2n)th 위치로서 스크램블된 출력 데이터 패킷(935)을 생성하기 위해 1C 및 1D, 1E 및 1F 등과 같이 위치가 교환된다.
mod-3 미러링에 있어서, 매 3개의 데이터 세그먼트의 제1 및 제3 데이터 세그먼트는 스와핑되며, 반면에 각 3쌍의 중간 패킷은 본래 위치로 유지된다. 따라서 스크램블된 데이터 패킷 출력(936)을 생성하기 위해, 데이터 세그먼트(1A, 1C)는 스와핑되며, 반면에 1B는 3쌍의 중심에 유지되고, 데이터 세그먼트(1D, 1F)는 스와핑되고, 1E는 3쌍의 중심에 유지된다. mod-3 미러링에 있어서, 대칭선은 2th, 5th, 8th, ..., (2 + 3n)th 위치에서 중심에 있다.
mod-4 미러링에 있어서, 입력 데이터 패킷(931)으로부터 스크램블된 출력 데이터 패킷(937)을 생성하기 위해, 매 4개의 데이터 세그먼트의 제1 및 제4 데이터 세그먼트 그리고 제4 및 제3 데이터 세그먼트가 스와핑된다. 따라서 데이터 세그먼트(1B)는 1D와 스와핑되고, 데이터 세그먼트(1B)는 1C와 스와핑된다. mod-4 미러링에 있어서, 대칭선은 모든 4쌍의 제2 및 제3 데이터 세그먼트 사이에서 중심에 있으며, 예를 들어 제2 및 제3 데이터 세그먼트 사이, 제6 및 제7 데이터 세그먼트 등으로, 또는 수학적으로 2.5th, 6.5th, ..., (2.5 + 4n)th 위치에 있다. mod-m 미러링에 있어서, 입력 데이터 패킷(932)의 제m 데이터 세그먼트는 제1, 즉 0th 데이터 세그먼트와 스와핑되며; 0th 데이터 세그먼트는 mth 요소와 스와핑되며, 마찬가지로 nth 요소는 스크램블된 출력 데이터 패킷(938)을 생성하기 위해(m-n)th 데이터 세그먼트와 스와핑된다.
도 51c에도 도시된 다른 스크램블링 방법은 모든 데이터 세그먼트가 좌측으로 또는 우측으로 1 프레임, 2 프레임, 또는 그 이상의 프레임만큼 시프트되는 프레임 시프트이다. 예를 들어, 단일 프레임 위상 시프트에서, 모든 데이터 세그먼트는 스크램블된 출력 데이터 패킷(940)을 생성하기 위해 1 프레임만큼 시프트되며, 여기서 제1 데이터 세그먼트는 제2 위치로 시프트되고; 제2 데이터 세그먼트는 제3 프레임으로 시프트된다. 도시된 예에서 입력 데이터 패킷(930)의 최종 프레임인 프레임 1F는 데이터 세그먼트(1A)에 의해 이전에 점유된 제1 프레임으로 시프트된다.
2프레임 위상 시프트에서, 입력 데이터 패킷(930)의 제1 데이터 세그먼트(1A)는 2개의 프레임만큼 데이터 세그먼트(1C)에 의해 이미 점유된 위치로 시프트되고, 제4 프레임(1D)은 스크램블된 출력 데이터 패킷(941)의 마지막 위치로 시프트되며, 데이터 세그먼트(1E)의 다음은 제1 위치로 시프트되고, 최종 위치(1F)는 제2 위치로 시프트된다. 마찬가지로, 4프레임 위상 시프트에서, 입력 데이터 패킷(930)의 데이터 세그먼트는 스크램블된 출력 데이터 패킷(942)을 생성하기 위해, 제1 프레임(1A)이 1A를 대체하는 1E, 1B 에 의해 이미 유지된 프레임을 대체하는 제1 프레임(1A)으로 제4 위치로 시프트된다. 최대 위상 시프트의 경우에, 제1 프레임은 마지막을 대체하고, 1B에 의해 본래 유지된 제2 프레임은 출력 데이터 패킷(943)의 제1 프레임이 되고, 제2 요소는 제1 위치로 시프트되고, 제3 위치는 두 번째 위치로 시프트된다. 하나의 프레임을 최대 위상 시프트 이상으로 위상 시프트하면 입력으로부터 바뀌지 않은 출력 데이터로 나타난다. 도시된 예는 데이터가 오른쪽으로 시프트된 위상 시프트를 포함한다. 이 알고리즘은 왼쪽으로 이동하지만 결과가 다른 위상 이동에도 적용된다.
기재된 바와 같은 전술한 알고리즘 및 유사한 방법은 여기에서 정적 스크램블링 알고리즘으로서 지칭되는데, 그 이유는 스크램블링 동작이 단일 시간에서 발생하여 입력 데이터 세트를 고유의 출력으로 변환하기 때문이다. 더욱이, 이미 도시된 알고리즘은 스크램블링이 어떻게 일어나는지를 결정하기 위해 데이터 패킷의 값에 의존하지 않는다. 도 51d에 도시된 바와 같이, 기재된 발명에 따라, 매개변수적 스크램블링은 데이터 패킷 자체 내에 포함된 데이터로부터 유도된 값에 기초하여, 스크램블링 방법이 가능한 스크램블링 알고리즘의 표, 예를 들어, 소트 # A, 소트 # B로부터 선택된다는 것을 의미한다. 예를 들어, 데이터 세그먼트 내에 포함된 데이터의 계산에 기초하여, 각 데이터 세그먼트가 수치로 변환될 수 있다고 가정하자. 데이터 세그먼트의 수치를 결정할 수 있는 하나의 방법은 데이터 세그먼트에서 비트 데이터와 동일한 10진수 또는 16진수를 사용하는 것이다. 데이터 세그먼트가 여러 용어를 포함한다면, 데이터 세그먼트의 숫자를 합산하여 숫자를 찾아낼 수 있다. 데이터 세그먼트 데이터는 단일 숫자 또는 "매개변수"와 조합되며, 그 후 어떤 스크램블링 방법이 사용되는지를 선택하는 데 사용된다.
도시된 예에 있어서, 언스크램블된 데이터 패킷(930)은 단계(950)에서 매개변수로 각 데이터 세그먼트에 대한 수치를 포함하는 데이터 표(951)로 변환된다. 도시된 바와 같이, 0 번째 프레임인 데이터 세그먼트(1A)는 23의 수치를 가지며, 첫 번째 프레임인 데이터 세그먼트(1B)는 125라는 수치를 갖는다. 단일 데이터 패킷 값은 전체 데이터 패킷(930)에 대해 단계(952)에서 추출된다. 도시된 예에 있어서, 합계(953)는 매개변수적으로 모두 1002 인 표(951)로부터의 모든 데이터 세그먼트 값의 선형 총합을 나타내며, 매개변수적으로 총합은 1002이다. 단계(954)에서 이 매개변수적 값, 즉 합계(953)는 표(955)에서 많은 중첩되지 않은 숫자 범위에 대해 합계(953)를 비교하여 어떤 종류의 정렬 루틴이 사용되어야 하는지를 결정하기 위해, 소프트웨어에서 사전 정의된 상태의 세트인 상태 표에 대해 비교된다. 이 예에 있어서, 매개변수 값(1002)은 1000 내지 1499 범위에 속하며, 이는 소트 # C를 사용해야 한다는 것을 의미한다. 일단 정렬 루틴이 선택되었다면, 매개변수 값은 더 이상 요구되지 않는다. 언스크램블된 데이터 입력(930)은 그 후 스크램블 데이터 패킷 출력(959)을 생성하기 위해 단계(956)에서 선택된 방법에 의해 스크램블된다. 도시된 예에 있어서, 표(957)에 요약된 소트 # C는 각 데이터 세그먼트에 대한 상대 이동의 세트를 포함한다. 스크램블된 데이터 패킷(959)의 제1 데이터 세그먼트인 0 번째 프레임은 1D 데이터 세그먼트를 3회 이동, 즉 3 시프트만큼 좌측으로 이동시킴으로써 결정된다. 제1 프레임은 그 본래 위치, 즉 0 개소의 이동으로부터 변하지 않은 데이터 세그먼트(1B)를 포함한다. 두 번째 프레임은 그 본래 위치로부터 두 번 이동한 데이터 세그먼트인 1E를 포함한다. 그 본래의 위치로부터 좌측으로 2만큼 시프트된 데이터 세그먼트(1F)를 포함하는 세 번째 프레임에 대해서도 동일하다. 스크램블된 데이터 패킷 출력(959)의 제4 프레임은 그 본래 위치로부터 우측으로 시프트된 데이터 세그먼트(1C), 즉 +2 이동을 포함한다. 제5 프레임은 그 본래의 위치로부터 우측으로 5회, 즉 +5 시프트된 데이터 세그먼트(1A)를 포함한다.
소트 #C 에 대해 표(957)에 요약된 이러한 방식으로, 모든 데이터 세그먼트는 매개변수적으로 결정된 스크램블된 데이터 패킷(959)을 생성하기 위해 새로운 위치로 독특하게 이동된다. 스크램블된 데이터 패킷을 언스크램링하기 위해, 동일한 알고리즘이 언스크램블링 동작을 수행하도록 선택되는 것을 보장하기 위해, 데이터 패킷의 매개변수 값(953)은 스크램블링 동작의 결과로서 변화될 수 없다. 예를 들어, 모든 데이터 세그먼트의 매개변수 값의 선형 합계를 사용하면 숫자의 순서와는 관계없이 동일한 수치를 생성한다.
동적 스크램블링은 데이터 패킷이 스크램블되었을 때의 조건을 식별할 수 있어서, 동일한 방법이 언스크램블링 동작을 수행하도록 선택될 수 있게 하는, 시스템 상태, 예를 들어 시간을 이용한다. 도 51b에 도시된 시스템에서, 상기 상태는 패키지의 송신자 또는 수신자에게 전송된 위장된 수치 시드를 생성하는 데 사용되며, 그 후 표로부터 스크램블링 알고리즘을 선택하기 위해 시드를 사용한다. 대안적으로, 상태 자체는 송신자 또는 수신자에게 전송될 수 있고, 상기 상태는 스크램블링/언스크램블링 알고리즘을 선택하는 데 사용되는 숨겨진 번호를 생성하기 위해 송신자 또는 수신자에 위치된 숨겨진 번호 생성기에 의해 사용될 수 있다. 이러한 배치가 도 51e에 도시되어 있으며, 여기서 상태, 예를 들어 시간(920)은 숨겨진 번호 생성기(960)를 사용하여 숨겨진 번호(961)를 생성하고, 또한 스크램블링 알고리즘 목록(962)으로부터 스크램블링 방법을 선택하는 데 사용된다. 스크램블링 동작 표(963)로부터 알고리즘을 선택하기 위해 숨겨진 번호(961)를 사용하면, 스크램블링 동작(963)은 언스크램블된 데이터 패킷(930)을 스크램블된 데이터 패킷(964)으로 변환한다. 도 51e에 도시된 바와 같이, 상태(920)는 숨겨진 번호 생성기(960)에 직접 통과될 수 있으며, 또는 상태(920)는 시드 생성기(921)를 통해 숨겨진 번호 생성기로 통과될 수 있다.
수치 시드 대신에 스크램블링 알고리즘을 선택하기 위해 숨겨진 숫자를 사용하는 이점은 데이터 스트림을 분석함으로써, 즉 스크램블된 데이터의 반복된 세트를 대응의 수치 시드와 통계적으로 관련시킴으로써 사이버 범죄자가 스크램블링 표를 재생성할 가능성을 제거한다는 점이다. 시드가 데이터 스트림에서 보일 수 있고 이에 따라 스파이 활동에 노출될 수도 있더라도, 숨겨진 번호 생성기와 숨겨진 번호(HN)는 공유된 비밀을 기초로 한다. 따라서 숨겨진 번호(HN)는 데이터 스트림에 존재하지 않거나 스파이 활동 또는 스니핑에 노출되며, 네트워크를 통해 전송되지는 않지만 수치 시드로부터 로컬로 생성된다는 것을 의미한다. 숨겨진 숫자 생성기의 이런 수학적 동작은, 수치 시드의 목적이 위장되어 있기 때문에, 해커를 좌절시키는 추가적인 보안 계층을 부여한다.
일단 알고리즘이 선택되었다면, 수치 시드는 스크램블링 프로세스(963)의 알고리즘에서 입력 변수로서 사용될 수도 있다. 수치 시드의 이중 사용은 시드가 알고리즘을 직접 선택하지는 않지만 그와 함께 작용하기 때문이다 스크램블된 데이터 세그먼트의 최종 시컨스를 결정한다. 유사한 방식으로, 동적으로 스크램블된 데이터 패킷을 스크램블하기 위해, 시드(929)[또는 대안적으로 상태 또는 시간(920)]는 스크램블링을 초기에 수행하는 통신 노드, 디바이스 또는 소프트웨어로부터 스크램블링을 원하는 노드 또는 디바이스로 통과되어야만 한다.
기재된 발명에 따라, 시드 생성 알고리즘(921), 숨겨진 번호 생성기(960), 및 스크램블링 알고리즘의 목록(962)은 "공유된 비밀", DMZ 서버에 저장되고(후술되는 바와 같이) 데이터 패킷의 송신자 또는 수신자에게는 알려지지 않은 정보를 나타낸다. 상기 공유 비밀은 사전에 설정되며, 또한 가능하기로는 비밀이 누출되지 않는 것을 보장하기 위해 다양한 인증 절차가 사용되는 코드 설치 중에 송신될 통신 데이터 패킷과는 관련이 없다. 이하에 기재되는 바와 같이, 공유 비밀은 도난당한 비밀 중 한 세트를 알고 있으면 해커가 전체 통신 네트워크에 액세스하거나 실시간 성명을 가로채지 못하도록, "영역"으로 제한된다.
데이터 패킷 전송 중에 스크램블링 알고리즘이 변화하는 동적 스크램블링에서 임의의 공유 비밀에 추가하여, 데이터를 스크램블하거나 언스크램블하기 위해 "상태"에 기초하는 시드가 요구된다. 시드가 기반이 되는 이 상태는 시드를 생성하는 데 사용된 상태에 대한 모호성이 없는 한, 또한 상기 데이터 패킷을 마지막 스크램블하는 데 어떤 상태가 사용되었는지를 다음 노드에 알려주는 약간의 수단이 있는 한, 시간, 통신 노드 번호, 네트워크 ID 또는 GPS 위치와 같은 임의의 물리적 매개변수를 포함할 수 있다. 시드를 생성하기 위해 시드 생성기에 의해 사용된 알고리즘은 공유 비밀의 일부이며, 이에 따라 시드의 지식은 시드의 기반이 되는 상태를 결정하는 것을 허용하지 않는다. 시드는 데이터 패킷 자체 내에 이를 매립함으로써, 이를 다른 채널 또는 경로, 또는 그 일부 조합을 통해 송신함으로써 하나의 통신 노드로부터 다음 통신 노드로 통과될 수 있다. 예를 들어, 시드를 생성하는 데 사용된 상태는 데이터 패킷이 통신 노드를 횡단 할 때마다 고정된 수만큼 후속적으로 증가되는 난수를 초기에 포함하는 카운터를 포함할 수 있으며, 각각의 카운트는 지정한 스크램블링 알고리즘을 나타낸다.
동적 스크램블링의 일 실시예에 있어서, 스크램블링의 제1 사례 중, 사용되는 스크램블링 방법을 선택하기 위해 난수가 생성된다. 이 난수는 명령 및 제어를 위해 예약되고 스크램블링에 노출되지 않는 데이터 패킷의 헤더 또는 부분에서 데이터 패킷에 매립된다. 데이터 패킷이 다음 노드에 도달하였을 때, 매립된 수는 적절한 알고리즘을 선택하여 들어오는 데이터 패킷을 언스크램블하도록, 통신 노드에 의해 판독되며 또한 소프트웨어에 의해 사용된다. 수, 즉 "카운트"는 하나의 카운트 또는 일부 다른 미리 결정된 정수만큼 다음에 증가되며, 패킷은 이 새로운 수와 관련된 알고리즘에 따라 스크램블되고, 또한 새로운 카운트는 이전의 수를 덮어 쓰는 데이터 패킷 출력에 저장된다. 다음 통신 노드는 상기 프로세스를 반복한다.
스크램블링 알고리즘을 선택하기 위해 기재된 카운터 기반 방법의 다른 실시예에 있어서, 초기 스크램블링 알고리즘을 선택하기 위해 난수가 생성되며, 이 수는 지정 데이터 패킷을 "공유된 비밀"로서 전송하기 위해 사용되는 모든 통신 노드로 전달된다. 예를 들어, 0으로 시작하는 카운트는 명령 및 제어를 위해 예약되고 스크램블링에 노출되지 않는 데이터 패킷의 헤더 또는 부분의 데이터 패킷에서 데이터 패킷에도 매립된다. 그 후 데이터 패킷은 다음 통신 노드로 포워딩된다. 패킷이 다음 통신 노드에 도착하였을 때, 서버는 카운트의 값을 판독하고, 초기 난수에 카운트를 부가하며, 데이터 패킷을 스크램블하는 데 사용되는 스크램블링 알고리즘을 식별하고, 이에 따라 패킷을 언스크램블한다. 그 후 카운트는 하나 또는 임의의 미리 결정된 정수만큼 증가되며, 카운트는 데이터 패킷의 헤더 또는 명령 및 제어를 위해 예약되고 스크램블링에 노출되지 않은 데이터 패킷의 임의의 부분에 다시 저장되어 이전 카운트를 덮어 쓴다. 공유 비밀로서 기능하는 난수는 통신 데이터 패킷에서 통신되지 않는다. 데이터 패킷이 다음 통신 노드에 도달하였을 때, 서버는 데이터 패킷으로부터 추출된 수정된 카운터 값에 추가되는 난수 공유 비밀을 추가한다. 이 새로운 수는 들어오는 패킷을 스크램블하기 위해 마지막 통신 노드에 의해 사용된 스크램블링 알고리즘을 고유하게 식별한다. 이 방법에 있어서, 사이버 해적에 의해 데이터 패킷의 언스크램블된 부분에서 의미 없은 카운트 수만 가로채며, 데이터가 의미하는 것은 없다.
다른 대안적인 방법에 있어서, 숨겨진 번호는 패킷의 상태 및 어떤 알고리즘이 이를 스크램블하기 위해 이용되었는지를 통신하기 위해 사용될 수 있다. 숨겨진 숫자는 기밀 번호, 즉 통신 노드간에 절대 통신되지 않으며 따라서 임의의 중간 공격자 또는 사이버 해적에게 스니핑이 불가능하거나 발견될 수 없는 "숨겨진 번호"를 생성하기 위해 함께 숫자 알고리즘을 일반적으로 포함하는 공유 암호와 함께 시변화 상태 또는 시드를 결합한다. 숨겨진 번호는 사용된 스크램블 알고리즘을 선택하는 데 사용된다. 숨은 숫자를 계산하는 데 사용된 알고리즘을 알지 못하면 상태 또는 시드가 의미가 없는데, 그 이유는 공유 비밀 알고리즘이 네트워크 또는 인터넷을 통해 액세스할 수 없는 방화벽 뒤에 저장될 수 있기 때문에, 네트워크 트래픽의 모니터링의 양이 패턴을 폭로하지 않기 때문이다. 문제를 더욱 복잡하게 하기 위해, 시드의 위치는 공유된 비밀을 나타낼 수도 있다. 일 실시예에 있어서, 데이터 패킷의 언스크램블된 부분에 의해 운반되고 데이터 스니핑, 예를 들어, 27482567822552213 에 의해 관찰 가능한 번호는 숫자의 일부만 시드를 나타내는 긴 숫자를 포함한다. 예를 들어, 제3 내지 제8 숫자가 시드를 나타낸다면, 실제 시드는 전체 숫자가 아니라 굵게 표시된 숫자 27482567822552213 이며, 즉 시드는 48256 이다. 이 시드는 숨겨진 번호를 생성하기 위해 공유 비밀 알고리즘과 조합되며, 상기 숨겨진 번호는 네트워크 전체를 통해 동적으로 변하는 스크램블 알고리즘을 선택하는 데 사용된다.
또한, 기재된 발명에 따르면, 다른 가능한 동적 스크램블링 알고리즘은 예측 가능한 노이즈를 통신 시 데이터 스트림에 의도적으로 도입하는 디더링의 과정이다. 하나의 가능한 디더링 방법은 패킷이 네트워크를 횡단할 때 발생하는 2개의 인접한 데이터 세그먼트의 반복된 전치(transposition)를 포함한다. 도 51f에 도시된 바와 같이, 동적 상태(990)에 대응하는 시간(t0)에서, 언스크램블된 데이터 패킷(990)은 패킷 스크램블링 동작(926)에 의해 스크램블되어, 동적 상태(991)에 대응하는 시간(t1)에서 스크램블된 데이터 패킷(1001)으로 나타난다. 서버(971)에서 호스트된 N1,1은 시컨스(1D, 1B, 1E, 1F, 1C, 1A)로 일련의 데이터 세그먼트를 포함한다. 데이터 패킷(1001)은 데이터 세그먼트(1E, 1B)를 스와핑함으로써 데이터 세그먼트 순서를 변경하는 시간(t2)에서 통신 노드(N1,1)에 의해 수정된다. 데이터 세그먼트 시컨스(1D, 1E, 1B, 1F, 1C, 1A)를 포함하는 결과적인 데이터 패킷(1002)은, 시컨스를 다시 1D, 1B, 1E, 1E로 되돌리는 시간(t3)에서 서버(972)에 호스트된 통신 노드(N1,2)에 의해 처리된다. 각각의 연속적인 노드에 의해, 데이터 세그먼트(1B, 1E)의 상대 위치는 스와핑되거나 또는 디더링되어, 2개의 연속적인 패킷을 동일하게 하지 않는다. 따라서 본래의 스크램블 시컨스는 대응하는 시간(t2, t4, t6)에서 변경된 데이터 패킷(1002, 1004, 1006)을 갖는 대응하는 시간(t1, t3, t5, t7)에서의 데이터 패킷(1001, 1003, 1005, 1007)을 포함한다. 서버(972) 상에 호스트된 통신 노드(N1,6)로부터 출력된 데이터 패킷(1007)은 그 후 패킷 언스크램블링 동작(928)에 의해 언스크램블되어, 시간(tf)에서 본래의 데이터 시컨스(930)를 복원한다.
기재된 보안 동적 네트워크 및 프로토콜에 따른 정적 스크램블링의 일 예가 통신 서버(1010 내지 1015)의 스트링을 횡단하는 데이터 패킷(930)에 적용되는 것이 도 52에 도시되어 있으며, 여기서 서버(1010) 상에 호스트된 통신 노드(N0,0)는 패킷 교환형 동작(926)을 포함하여, 스크램블된 패킷(1008)으로 나타난다. 스크램블된 패킷(1008)은 그 후 데이터 세그먼트 시컨스로의 임의의 추가 변경 없이 패킷 교환형 통신 네트워크를 횡단하며, 여기서 서버(1015) 상에 호스트된 통신 노드(N0.f)는 데이터 패킷을 그 본래의 순차적으로 복귀시키는 패킷 언스크램블링을 동작(928)을 최종적으로 수행한다. 이 형식의 데이터 전송은 정적 스크램블링을 나타내는데, 그 이유는 데이터 패킷이 일단 최초에 스크램블되었다면, 마지막 서버에 도달할 때까지 네트워크 횡단을 변경하지 않기 때문이다.
비록 스크램블되었더라도, 네트워크를 횡단하는 도시된 데이터는 "평문"으로 지칭될 수 있는데, 그 이유는 실제 데이터가 데이터 패킷에 존재하기 때문에, 즉, 패킷이 암호문으로 암호화되지 않았기 때문이다. 대조적으로, 암호문에서, 스크램블 여부와는 상관없이 본래 데이터를 포함하는 문자 스트링은 암호 키를 사용하여 일련의 무의미한 문자로 번역되고, 또한 해독 키 없이 그 본래의 평문 형태로 복원될 수 없다. 기재된 SDNP 기반 통신에서의 암호화의 역할은 이하의 섹션 "암호화"에서 보다 자세히 논의된다.
네트워크를 통한 전송 중에 데이터 패킷의 순서를 변경하기 위해, 도 53에 도시된 바와 같이 패킷 "재스크램블링"이 요구된다. 패킷 재스크램블링의 프로세스는 이를 다시 스크램블하기 전에 스크램블된 데이터 패킷을 그 언스크램블된 상태로 복귀시킨다. 따라서 여기에 사용되는 바와 같이 "재스크램블링"이라는 용어는 전형적으로 상이한 스크램블링 알고리즘 또는 방법으로 데이터 패킷의 언스크램블링 및 그 후 이를 다시 스크램블하는 것을 의미한다. 이런 접근법은 이전에 스크램블된 패키지를 스크램블링하고 또한 본래 데이터를 복원하는 데 필요한 시컨스 트랙을 잃어버림으로써 발생할 수 있는 데이터 손상의 위험을 피한다. 도시된 바와 같이, 일단 패킷 스크램블링 동작(926)에 의해 초기에 스크램블되었다면, 스크램블된 데이터 패킷(1008)은 먼저 데이터를 스크램블하는 데 사용된 스크램블링 알고리즘의 역동작을 사용하는 언스크램블링 동작(928)으로 이를 언스크램블링하고, 그 후 이전의 스크램블링 동작(926)에 사용된 것 보다 상이한 스크램블링 알고리즘을 사용하는 새로운 스크램블링 동작(926)으로 데이터 패킷을 스크램블함으로써 "재스크램블"된다. 결과적인 재스크램블된 데이터 패킷(1009)은 이전의 스크램블된 데이터 패킷(1008)과는 상이하다. 재스크램블링 동작(1017)은 여기서 "US 재스크램블링"으로서 지칭되는 스크램블링이 뒤따르는 언스크램블링의 연속적인 적용을 포함한다. 본래의 데이터 패킷(930)을 회복하기 위해, 최종 패킷 언스크램블링 동작(928)은 데이터 패킷을 마지막 재스크램블하는 데 사용된 동일한 알고리즘의 역기능을 사용할 것을 요구한다.
본 발명에 따른 SDNP 기반 패킷 교환형 통신 네트워크에서 US 재스크램블링의 적용이 도 54에 도시되어 있으며, 여기서 서버(1011)의 스크램블링 동작(926)에 의해 먼저 스크램블된 데이터 패킷(930)은 데이터 패킷이 패킷 스위치 통신 서버(1012 내지 1015)의 네트워크를 횡단할 때, US 재스크램블링 동작(1017)에 의해 연속적으로 수정된다. 최종 언스크램블링 동작(928)은 데이터 패킷(930)을 그 본래의 순차적으로 복원하는 서버(1016)에서 발생한다. 재스크램블링이 시간 t0 부터 tf 까지 상이한 시간에 반복적으로 발생하기 때문에, 결과적인 네트워크는 동적으로 스크램블된 통신 네트워크를 나타낸다. 동작 시, 언스크램블된 데이터 패킷(930)은 서버(1011) 상에 호스트된 통신 노드(N0,0) 내에 실행된 스크램블링 동작(926)을 사용하여 스크램블된다. 서버(1012) 상에 호스트된 통신 노드(N0,1) 내에 실행된 US 재스크램블링 동작(1017)을 사용하여, 패킷은 시간(t2)에서 스크램블된 데이터 패킷(1008)으로 변환한다. 데이터 패킷이 나머지 통신 노드를 통해 이동할 때마다 동일한 프로세스가 다시 반복된다. 예를 들어, 서버(1013) 상에 호스트된 통신 노드(N0,2) 내에서, US 재스크램블 동작(1017)은 재스크램블된 데이터 패킷(1008)을 새로운 재스크램블된 데이터 패킷(1009)으로 변환한다.
각각의 재스크램블링 동작(1017)은 먼저 통신 노드에 들어가는 패킷의 이전 상태에 의존함으로써 이전의 스크램블링을 취소하며, 예를 들어 데이터 패킷(1008)은 시간(t2)에 대응하는 상태로 스크램블되며, 그 후 시간(t3)에 대응하는 새로운 상태로 패킷을 새롭게 스크램블하여, 재스크램블된 데이터 패킷(1009)을 생성한다. 이미 기재된 바와 같이, 수행된 스크램블링을 결정하는 데 사용되는 상태는 시간, 통신 노드 번호, 네트워크 신원 또는 심지어 GPS 위치와 같은 물리적 매개변수에 기초하는 시드, 시간, 상태를 포함하므로, 스크램블링이 마지막으로 수행되었던 방법에 대해 애매모호함이 없다. 따라서 입력 데이터 패킷을 서버(1012) 상에 호스트된 통신 노드(N0,1)로 언스크램블하는 것은 데이터 패킷, 즉 서버(1011) 상에 호스트된 통신 노드(N0,0)의 상태를 스크램블하는 데 사용되는 이전 서버의 상태에 의존하며; 서버(1012) 상에 호스트된 통신 노드(N0,1)에 들어오는 데이터 패킷의 언스크램블링은 스크램블링 시에 서버(1012) 상에 호스트된 통신 노드(N0,1)의 상태에 의존하고, 스크램블링 시에는 서버(1014) 상에 호스트된 통신 노드(N0,3)에 들어오는 데이터 패킷을 언스크램블하는 것은 스크램블 시 서버(1013) 상에 호스트된 통신 노드(N0,2)의 상태에 의존한다. 통신 네트워크 내의 마지막 통신 노드, 이 경우 서버(1016) 상에 호스트된 통신 노드(N0,f)는 US 재스크램블링을 수행하지 않고, 대신에 데이터 패킷(93090)을 그 본래의 언스크램블된 순차적으로 복원하기 위한 언스크램블링 동작(928)만을 수행한다.
기재된 발명에 따라, 데이터의 정적 및 동적 스크램블은 언스크램블된 데이터의 해석을 의미 없게 하고, 사운드를 인식할 수 없는 노이즈로 재정렬하고, 비디오를 비디오 스노우로 재정렬하고, 및 복구할 수 없는 코드를 스크램블한다. 자체적으로, 스크램블링은 큰 수준의 보안을 제공한다. 그러나 여기에 기재된 SDNP 방법에서, 스크램블링은 해킹, 사이버 공격, 사이버 해적, 및 중간 공격자 공격으로부터 자유로운 통신을 제공하고 보장하는 데 이용되는 단지 하나의 요소일 뿐이다.
패킷 암호화 - 기재된 발명에 따라, 패킷 교환형 네트워크를 통한 보안 통신은 해킹을 방지하고 보안을 보장하기 위해 여러 요소에 의존하는 데, 그 중 하나는 SDNP 암호화를 포함한다. 이미 기재된 바와 같이 그리스어로 "은폐, 은닉, 모호"라는 의미의 암호화는 통상적으로 "평문"이라고 지칭되는 일반 정보 또는 데이터를 비밀 지식 없이 읽을 수 없는 이해하기 어려운 포맷을 포함하는 "암호문"으로 변환하는 수단을 나타낸다. 현대의 통신에서, 이런 비밀 지식은 일반적으로 데이터를 암호화하고 해독하는 데 사용되는 하나 또는 그 이상의 "키"를 공유하는 것을 포함한다. 상기 키는 일반적으로 알고리즘으로 생성된 의사 난수를 포함한다. 오늘날 많은 기사와 텍스트가 닐 스티븐슨(Neal Stephenson) ⓒ 1999에 의한 "암호화", 사이몬 싱(Simon Singh) ⓒ 1999에 의한 "코드 북: 고대 이집트로부터 양자 암호로의 비밀의 과학", 닐 퍼거슨(Niels Ferguson) ⓒ 2013에 의한 "실질 암호화" 및 1939년에 처음 출판된 "해독: 암호 및 그 해법에 관한 연구"와 같은 다양한 암호화 기술의 장단점을 논의하는 데 사용할 수 있다.
암호화 또는 암호의 개념이 오래되었고 본 기술분야의 당업자에게 잘 알려져 있지만, 기재된 보안 동적 네트워크 및 프로토콜에서의 암호화의 적용은 독특하며, 임의의 클라이언트의 자체 암호화와 상관없이 네트워크 아키텍처 자체에 종단 간 암호화와 단일의 홉 노드 대 노드 동적 암호화 모두를 촉진시켰다. SDNP 통신은 충분한 시간이 주어진 기본 수칙으로 구성되며, 또한 암호화된 암호문과는 상관없이 임의의 정적 암호화된 파일 또는 메시지가 결국 파괴되어 그 정보가 도난당할 수 있다. 이런 가정이 실제로 부정확할 수 있지만, 반대의 경우, 즉 지정 암호화 방법이 실패할 때까지 기다리는 것은 허용할 수 없고 되돌릴 수 없는 결과적 손상을 초래할 수 있기 때문에, 명제를 증명하거나 반증할 필요가 없다.
대신에, SDNP 통신은 모든 암호화된 파일이 제한된 "유효 기간"을 갖는다는 전제를 기반으로 하며, 즉 암호화된 데이터는 한정된 기간 동안만 안전하며 비밀 데이터는 동적으로 다시 암호화되어야 하며, 또한 규칙적인 간격으로 이상적으로 최첨단 컴퓨터로 그 암호화를 균열시키는 데 요구되는 최상의 시간 추정 보다 이상적으로 훨씬 더 자주 발생한다는 것을 은유적으로 의미한다. 예를 들어, 암호학자에 의해 암호 엔진의 대향 서버 팜(server farm)이 1년 내에 주어진 암호를 깨뜨릴 수 있다고 추정된다면, SDNP 통신에서 데이터 패킷은 매 초 또는 심지어 매 100 ms 간격으로 재암호화될 것이며, 최상의 기술의 능력이 이를 균열시킬 수 있는 것보다 더 짧다. 따라서 SDNP 암호화는 반드시 동적인, 즉 시변화형이며, 또한 공간적으로, 즉 패킷 교환형 네트워크 또는 지리에서 통신 노드의 위치에 따라 변한다. 따라서 여기에 사용되는 바와 같이, "재암호화" 또는 "재암호"라는 용어는 데이터 패킷을 해독하고 그 후 전형적으로 상이한 암호화 알고리즘 또는 방법으로 이를 다시 암호화하는 것을 지칭한다.
따라서 SDNP 암호화는 암호화되지 않은 평문으로부터의 데이터를 반복적으로 자주 암호화 텍스트로 변환하여, 정보를 이해할 수 없고 쓸모없게 만든다. SDNP의 동적 암호화 방법을 사용함으로써 주어진 패킷의 데이터 암호화가 기적적으로 파괴되었더라도, 다음 데이터 패킷은 완전히 상이한 암호화 키 또는 암호를 사용하며, 또한 그 암호화를 균열시키기 위해 완전히 새로운 노력을 요구한다. 각각 독창적으로 암호화된 각 데이터 패킷의 전체 콘텐트를 제한함으로써, 허가되지 않은 액세스의 잠재적 피해가 완화되는데, 그 이유는 노출된 데이터 패킷 자체가 너무 작아서 사이버 해적단에 의해 의미 있고 유용하지 않은 데이터 파일을 포함하기 때문이다. 더욱이, 동적인 암호화를 전술한 SDNP 스크램블링 방법과 조합함으로써, 통신 보안이 대단히 향상된다. 심지어 그 암호화되지 않은 형태에서, 가로챈 데이터 파일은 의미 없고 이해할 수 없는 데이터 세그먼트의 순차적으로 스크램블된 데이터, 음성 또는 비디오의 단지 작은 스니펫만 포함할 뿐이다.
본 발명에 따라, SDNP 암호화는 동적이고 상태-의존적이다. 도 55a에 도시된 바와 같이, 암호화 동작(1020)을 통해 처리된 평문(930)을 포함하는 암호화되지 않은 데이터 패킷은, 암호문(1024 또는 1025)을 포함하는 암호화된 데이터 패킷으로 나타난다. 암호문(1024)의 경우, 평문(930)의 전체 데이터 패킷은 데이터 세그먼트(1A 내지 1F)를 단일의 데이터 파일로서 취급한다. 암호문(1025)의 경우에, 각 데이터 세그먼트(1A 내지 1F)는 개별적으로 그리고 명확하게 암호화되고 다른 데이터 세그먼트와 병합되지 않는다. 제1 데이터 세그먼트(1A)는 예시적인 목적으로 7 $로 시작하며 도시되지 않은 긴 문자 스트링 또는 숫자를 포함하는 문자 스트링에 의해 도시된 대응하는 제1 암호 텍스트 데이터 세그먼트로 암호화된다. 마찬가지로, 제2 평문 데이터 세그먼트(1B)는 *^로 시작하는 예시적인 목적으로 도시된 긴 문자 스트링을 포함하는 제2 암호 암호문 데이터 세그먼트로 암호화된다. 문자 7 $ 및 *^는 의미 없은 기호, 숫자 및 영숫자 문자 스트링의 시작을 나타내는 것을 의미하며, 평문 소스 또는 암호화될 문자 스트링의 길이에서 지정한 데이터에 대해 어떤 것을 제한하거나 부여하지 않는다.
암호화 동작(1020)은 이용 가능한 임의의 알고리즘, 암호화 또는 암호 방법을 사용할 수 있다. 알고리즘이 정적 방정식을 나타낼 수 있는 반면에, 일 실시예에서 암호화 동작은 암호화가 발생할 때 시간(920)과 같은 동적 변수 또는 "상태" 및 "E 키"(1022)를 생성하기 위해 암호화 생성기(1021)를 사용하며, 이는 암호화가 수행되었던 시간(920)과 같은 상태에 의존할 수도 있다. 예를 들어, 암호화의 날짜 및 시간은 암호화 알고리즘이 발견되더라도 재생성될 수 없는 암호화 키를 생성하기 위한 수치 시드로서 사용될 수 있다. 시간(920) 또는 다른 "상태"는 사용 가능한 암호화 알고리즘의 목록인 암호화 알고리즘 목록(1023)로부터 지정 알고리즘을 선택하도록 사용될 수도 있다. 데이터 흐름도에서, 암호화 동작(1026)을 위해 도시된 심볼에 의해 도시된 바와 같이, 도식적인 또는 기호적인 표현을 사용하여 이 패킷 암호화 동작 및 시컨스를 설명하는 것이 편리하다. 본 발명의 전반에 걸쳐, 패드록(padlock)은 또한 보안 및 암호화된 데이터를 기호로 나타낼 수도 있다. 패드록의 꼭대기에 위치한 시계면을 갖는 패드록은 구체적으로 보안 전달 메커니즘, 예를 들어 암호화된 파일을 나타내며, 이는 지정 간격 또는 지정 시간 내에 수신되지 않았다면, 자멸하고 영원히 손실된다.
도 55b에 도시된 해독 동작은 암호화 동작(1020)의 역기능, 구체적으로는 해독 동작(1031)을 도시하고 있으며, 여기서 D 키 생성기(1029)에 의해 생성된 해독 키 또는 "D- 키"와 함께, 상태 또는 시간(920) 및 암호문(1024)을 생성하기 위해 사용된 다른 상태는 본래의 평문 데이터 패킷(990)을 포함하는 암호화되지 않은 데이터를 생성하기 위해 암호화를 취소하기 위해, 즉 파일을 해독하기 위해 재사용된다. 패킷 암호화가 처음 발생했을 때 사용된 동일한 상태 또는 시간(920)을 사용하여, 암호화 알고리즘 목록(1023)으로부터 선택된 동일한 암호화 동작이 해독 동작(1031)에서 다시 사용될 수 있다. 암호화 알고리즘 목록(1023)이 용어 "암호화"를 지칭하더라도, 동일한 알고리즘 표가 "해독"을 수행하는 데 필요한 역기능을 식별하고 선택하는 데 사용되며, 즉 암호화 알고리즘 목록(1023)은 데이터 패킷을 암호화하고 해독하는 데 필요한 정보를 포함한다. 두 기능이 역순으로 수행되는 동일한 단계를 포함하기 때문에, 표(1023)는 "암호화/해독" 알고리즘 표(1023)로 이름이 바뀔 수 있다. 그러나 명확함을 위해, 표는 기능에 의해서만 표시되고 반 기능으로는 라벨링되지 않는다.
해독 동작(1031)을 실행하기 위해 선택된 암호화 알고리즘이 패킷 암호화 동작(1020)에 사용된 본래의 알고리즘의 역과 일치하지 않으면, 시간 또는 상태(920)가 암호화가 발생된 시간과 일치하지 않으면, 또는 D 키(1030)가 암호화 중 사용된 E 키(1022)에 대해 미리 정의된 숫자 관계를 갖지 못하면, 해독 동작(1031)은 본래의 암호화되지 않은 데이터(990)를 복구하지 못하며, 또한 패킷 데이터는 손실될 것이다. 데이터 흐름도에 있어서, 해독 동작(1032)을 위해 도시된 심볼로 도시된 바와 같이, 이 패킷 해독 동작 및 시컨스를 개략적인 또는 심볼형 표현을 사용하여 도시하는 것이 편리하다.
본 발명에서 이미 기재된 바와 같이, 암호 작성술에서 암호화 및 해독 키의 사용과, 대칭형 공개 키 암호화, RSA 암호화, 및 AES256 암호화와 같은 공통 암호화 알고리즘의 암호화에 관한 지식은 통상적인 것이며 그리고 본 기술분야의 숙련자에게 잘 알려져 있다. 그러나 기재된 SDNP 통신 시스템에서의 이러한 알려진 암호화 방법의 적용은 해킹 또는 해독에 쉽게 영향을 받지 않는데, 그 이유는 숨겨진 정보, 공유된 비밀, 및 기재된 SDNP 통신에 고유한 시간-의존 동적 변수 및 상태 때문이다.
따라서 사이버 해적이 강력한 암호화 방법을 깨기에 충분한 컴퓨터 성능을 갖추고 있더라도, 이들은 해독 동작을 수행하는 데 필요한 비공개 또는 공유 비밀로서 SDNP 네트워크에 매립된 어떤 정보가 부족하며, 암호화가 변하기 전에 몇 분의 1 초에 암호화를 균열시켜야만 한다. 또한, 기재된 SDNP 네트워크를 횡단하는 모든 데이터 패킷은 고유 키 및 동적 상태를 갖는 상이한 암호화 방법을 이용한다. 주어진 패킷 내에 포함된 누락된 정보, 동적 상태 및 제한된 정보 콘텐트의 조합은 사이버 해적에게 대한 도전과 배제 모두에서 임의의 주어진 데이터 패킷으로부터 의미 있는 데이터 절도를 얻게 한다.
전체 문서, 비디오 스트림 또는 음성 대화를 가로채어 일관된 데이터 시컨스를 재구성하기 위해, 사이버 공격은 연속적으로 하나가 아니라 수천 개의 연속적인 SDNP 패킷을 연속적으로 균열시키고 해독해야 한다. 일련의 SDNP 패킷의 연속적인 해킹의 벅찬 도전은 암호화와 상기 데이터 패킷 스크램블링에 관한 이미 기재된 방법을 조합함으로써 더욱 악화된다. 도 56에 도시된 바와 같이, 암호화된 스크램블된 데이터 패킷(1024)의 생성은 스크램블되지 않은 평문 데이터 패킷(990)을 먼저 스크램블된 평문 데이터 패킷(1008)으로 변환하고 그 후 스크램블된 데이터 패킷의 암호문(1024)으로 변환하기 위해, 스크램블링 동작(926)과 암호화 동작(1026)의 연속적인 조합을 포함한다. 암호화된 스크램블된 패키지를 되돌리기 위해, 스크램블된 평문 데이터 패킷(1035)을 복원하도록 먼저 해독 동작(1032)에 의해, 그 후 다음 언스크램블된 평문 데이터 패킷(990)을 복원하도록 언스크램블링 동작(928)에 의해 역기능이 역순으로 적용되어야만 한다.
도시된 바와 같이, 스크램블링 및 암호화는 보안 통신을 달성 시 보완적인 기술을 나타낸다. 네트워크를 횡단하는 암호화되지 않은 스크램블된 데이터는 "평문"으로서 지칭되는데, 그 이유는 실제 데이터가 데이터 패킷에 존재하기 때문에, 즉 패킷이 암호문으로 암호화되지 않았기 때문이다. 암호화된 데이터 패킷 또는 암호문은 암호화 키를 사용하여 무의미한 일련의 터무니없는 문자로 변환된 스크램블 또는 언스크램블된 문자 스트링을 포함하며, 또한 대응하는 해독 키 없이 그 본래의 평문 형태로 복원될 수 없다. 사용된 알고리즘에 따라, 암호화 및 해독 키는 사전 정의된 수학적 관계에 의해 수학적으로 관련된 동일한 키 또는 구별 키를 포함할 수 있다. 따라서 스크램블링 및 암호화는 SDNP 통신을 위해 기재된 발명에 따라 보안 통신의 달성 시 보완적인 기술을 나타낸다.
2가지 방법, 즉 스크램블링 및 암호화는 암호화된 스크램블된 데이터 패킷으로부터 본래 데이터 패킷을 복원하는 데 사용되는 시컨스가 이를 생성하는 데 사용된 역순으로 발생해야 한다는 점을 제외하고는, 조합하여 사용하는 경우라도 독립적으로 고려할 수 있다. 예를 들어, 데이터 패킷(990)이 스크램블링 동작(926)을 사용하여 먼저 스크램블되고 나서 암호화 동작(1026)을 사용하여 암호화되면, 본래의 데이터 패킷을 복원하기 위해, 암호화된 스크램블된 데이터 패킷(1024)은 먼저 해독 동작(1032)을 사용하여 해독되어야만 하고, 그 후 스크램블링 동작(928)을 사용하여 언스크램블되어야 한다. 수학적으로, 스크램블링 동작(F)이 일련의 비트열 또는 문자 스트링을 등가의 스크램블된 버전으로 스크램블링하고 언스크램블링 동작(F-1)이 스크램블링을 취소하면,
F-1[F(A)] = A으로 되며,
또한 유사하게 암호화 동작(G)이 평문의 스트링을 등가 암호문으로 암호화하고, 해독 동작(G-1)이 암호화를 취소하면,
G-1[G(A)] = A으로 되며,
그 후, 조합하여 스크램블링 및 이어서 암호화 및 해독 그리고 언스크램블링의 연속적인 동작은 본래의 인수(argument)(A), 언스크램블된 평문 데이터 패킷으로 복귀한다. 따라서
F-1{G-1[G(F(A))]} = A으로 되는데,
그 이유는 시컨스가 역순으로 발생하기 때문이며, 특히 [G-1] 암호화된 스크램블된 패킷[G(F(A)]을 해독하는 것은 스크램블된 평문 데이터 패킷 F(A)를 복원한다. 스크램블된 평문 패킷 F(A)의 후속의 언스크램블링 동작[F(A)]은 본래의 데이터 패킷(A)을 복원한다.
제공된 선형 방법이 사용되면, 시컨스는 가역적이다. 예를 들어, 데이터 패킷이 먼저 암호화되고 나서 스크램블된다면, 그 후 본래의 데이터 패킷을 복원하기 위해, 스크램블된 암호문은 먼저 언스크램블되고 해독되어야만 한다. 따라서
G-1{F-1[F(G(A))]} = A으로 된다.
시컨스 변경은 동작하지 않는다. 이전에 암호화되고 나서 스크램블된 데이터 패킷을 해독하면 본래의 데이터 패킷의 해독은 본래의 데이터 패킷을 복구하지 않을 것이며, 즉
F-1{G-1[F(G(A))]} ≠ A으로 된다.
마찬가지로, 스크램블되고 그 후 암호화된 패킷의 해독 또한 본래의 데이터 패킷을 복원하지 못할 것인데, 그 이유는
G-1{F-1[G(F(A))]} ≠ A 이기 때문이다.
요약하면, 평문 패킷이 암호화되기 전에 스크램블된다면, 언스크램블되기 전에 해독되어야만 하며, 평문 패킷이 스크램블되기 전에 암호화되었다면, 해독되기 전에 언스크램블되어야만 한다.
본 발명에 따른 SDNP 방법의 일 실시예에 있어서, 스크램블링 및 암호화는 어느 순서로 수행될 수 있지만, 네트워크 전송 중에는 암호화 및 해독이 스크램블링보다 더 빈번하게 발생하며, 따라서 도 56에 도시된 바와 같이 역전되기보다는 스크램블링 및 해독이 발생한 후에만 암호화가 발생해야 한다. 편의상, 우리는 암호화 동작(1026)에 이어지는 패킷 스크램블링 동작(926)의 조합을 스크램블된 패킷 암호화 동작(1041)으로서 정의하였으며, 또한 그 역으로, 패킷 스크램블링 동작(928)에 이어지는 해독화 동작(1032)의 조합을 해독된 패킷 스크램블링 동작(1042)으로서 정의하였다. 이들 하이드립된 동작은 본 발명에 따라 정적 및 동적 SDNP 통신에 사용될 수 있다.
도 57에 있어서, SDNP 통신을 표현하면, 평문 패킷(990)은 암호문 데이터 패킷(1040)에 의해 표현되는 정적으로 암호화되고 스크램블된 형태로, 패킷 교환형 통신 네트워크의 일련의 통신 노드(1011 내지 1016)를 횡단하고 있으며, 이는 노드 대 노드 또는 시간에 따라 변하지 않는다. 제1 서버, N0.0 통신 노드(1101)에 도시된 바와 같이, 스크램블링 암호화 동작(1041)은 본래의 평문 데이터 패킷(990)을 암호화되고 스크램블된 데이터의 암호문 데이터 패킷(1040)으로 변환하기 위해 사용된다. 일단 시간(t1) 및 대응하는 상태(991)에서 일단 변환되었다면, 암호화된 스크램블된 데이터 패킷은 최종적으로 N0,f 통신 노드(1016)에 도달할 때까지 데이터 패킷이 네트워크를 횡단함에 따라 고정되어 변하지 않으며, 여기서 상기 데이터 패킷은 시간(tf)에서 해독 언스크램블링 동작(1042)에 의해 그 본래의 형태의 평문 데이터 패킷(990)으로 복귀된다. 스크램블링과 암호화의 조합이 보안을 크게 향상 시키는 반면에, 이는 동적 보안을 나타내지는 않는데, 그 이유는 데이터 패킷이 시간이 지남에 따라 그리고 전송 중에도 변하지 않기 때문이다.
정적 스크램블링 암호화를 사용하는 임의의 실행에서 보안을 향상시키기 위한 하나의 수단은 각각의 데이터 패킷이 통신 네트워크에 들어가는 시간(t1)에서 상태, 시드 및/또는 키를 포함하여, 송신된 각각의 데이터 패킷이 상이한 스크램블링 및/또는 암호화 방법에 노출되는 것을 보장하는 것이다.
그러나 패킷이 정시에 네트워크를 횡단할 때, 데이터 패킷의 암호화 또는 스크램블링 또는 두 가지 모두를 동적으로 변경하는 것이 더욱 강력한 대안이다. 필요한 데이터 처리를 촉진시켜 SDNP 통신의 완전 동적 버전을 구현하기 위해, 이것이 패킷 교환형 통신 네트워크에서 각각의 통신 노드를 통과할 때, 각각의 패킷을 "재스크램블"(즉, 해독 및 스크램블) 및 암호화(즉, 암호화 해제 및 그 후 암호화)하도록 이전의 정의된 프로세스를 조합할 필요가 있다. 여기서 사용되는 바와 같이, "재패킷" 또는 "재패킷팅"이라는 용어는 언스크램블되기 전에 처음에 해독되거나 또는 해독되기 전에 언스크램블되는지에 따라 때로 "재스크램블링" 및 "재암호화"의 조합을 지칭하기 위해 사용될 것이다.
어느 경우에나, 주어진 노드에서 언스크램블링 및 해독 동작은 패킷이 이전 노드를 떠날 때 스크램블링 및 암호화 동작의 반대의 순서로 수행되어야만 하며, 즉 패킷이 이전의 노드에서 스크램블되고 그 후 암호화되었다면, 현재 노드에서 먼저 해독되어야 하고 그 후 언스크램블되어야 한다. 전형적으로, 패킷은 현재 노드를 떠날 때 스크램블되고 그 후 암호화될 것이다.
통신 노드에서의 "재패킷" 동작이 도 58에 도시되어 있으며, 여기서 들어오는 암호문 데이터 패킷(1040)은 먼저 해독 동작(1032)에 의해 해독되고, 그 후 언스크램블링 동작(928)에 의해 언스크램블되어, 본래의 패킷의 콘텐트를 포함하는 언스크램블된 평문 데이터 패킷(990)을 복구하기 위해 언스크램블링 동작(928)에 의해 언스크램블된다. 패킷 내의 임의의 정보가 검사, 파싱, 분할, 또는 재지향되어야만 한다면, 언스크램블된 평문 파일은 이러한 동작을 수행하기에 가장 적합한 포맷이다. 그 후, 평문 데이터 패킷(990)은 새로운 스크램블된 암호문 데이터 패킷(1043)을 생성하기 위해, 암호화 동작(1026)에 의해 수행되는 새로운 암호화가 뒤따르는 스크램블링 동작(926)을 사용하여 다시 스크램블된다. 들어오는 스크램블된 암호문 데이터 패킷(1040)의 재패킷 동작이 해독, 언스크램블링, 스크램블링 및 암호화에 의해 연속적으로 발생하기 때문에, 약어 DUSE 재패킷 동작(1045)은 여기에서는 본 발명에 따라 기재된 기술을 나타내기 위해 여기에 사용된다. 동적 보안 네트워크에서, 해독 동작(1032) 및 언스크램블링 동작(928)을 수행하는 데 사용되는 상태 또는 시간, 해독 키 및 임의의 시드는 바람직하게는 스크램블링 동작(926) 및 암호화 동작을 실행하는 데 사용되는 상태 또는 시간, 시드 또는 암호화 키와는 상이하다.
기재된 바와 같은 DUSE 재패킷 동작(1045)은 임의의 통신 노드 내에서 소프트웨어, 펌웨어 또는 하드웨어로서 실행될 수 있다. 일반적으로, 소프트웨어 코드는 시간이 지남에 따라 업데이트되거나 개선될 수 있기 때문에, 이런 동작을 실행하기 위해 소프트웨어를 이용하는 것이 바람직하다. 동적 네트워크에서 DUSE 재패킷 동작(1045)의 애플리케이션이 도 59에 도시되어 있으며, 여기서 서버(1011) 상에 호스트된 통신 노드(N0,0)는 암호화된 스크램블된 패킷 동작(1041)을 수행하고, 서버(1016) 상에 호스트된 통신 노드(N0,f)는 해독 언스크램블링 동작(1042)을 수행하는 반면에, 서버(1012 내지 1015) 상에 각각 호스트된 중간 통신 노드(N0,1 내지 N0,4)는 각각 DUSE 재패킷팅 동작(1045)을 수행한다. 동작 시, 평문 데이터 패킷(990)은 먼저 통신 노드(N0,1)에서 스크램블링 암호화 동작(1041) 에 의해 처리되고, 그 후 통신 노드(N0,1)에서 DUSE 재패킷팅 동작(1045)에 의해 처리되어, 암호화 전에 해독, 패킷 언스크램블링 및 패킷 스크램블링 후 패킷을 나타내는 재패킷된 스크램블 평문(1008)을 생성한다. 그 후, 스크램블된 평문(1008)은 이어서 시간(t2)에서 그리고 대응하는 상태(992)에서 암호문(1040)을 형성하도록 암호화된다. 상기 처리는 통신 노드(N0,2)에서 다시 반복되고, 그리고 통신 노드(N0,3)에서 다시 반복되어, 시간(t4)에서 그리고 대응하는 상태(994)에서 암호문(1048)을 형성하도록 나중에 암호화된 재패킷된 스크램블된 평문(1009)을 생성한다. 마지막으로, 통신 노드(N0,f)는 시간(tf)에서 언스크램블된 평문(990)을 복원하기 위해 언스크램블링 해독 동작(1042)을 수행한다.
패킷 혼합 및 분할 - 여기에 기재된 보안 동적 네트워크 및 프로토콜의 다른 핵심 요소는 데이터 패킷을 서브패킷으로 분할하고, 이들 서브패킷을 다중 경로 내로 유도하고, 및 서브패킷을 혼합 및 재결합하여 완전한 데이터 패킷을 구성하는 그 능력이다. 패킷 분할의 프로세스가 도 60a에 도시되어 있으며, 여기서 데이터 패킷(1054)은 알고리즘 파싱 동작(1052)과 그리고 비 데이터 "정크" 데이터 세그먼트를 삽입하거나 제거하는 능력을 갖는 정크 동작(1053)과 조합된 분할 동작(1051)을 사용하여 분할된다. 인간 게놈에 존재하는 정크 DNA 와 유사하게, 정크 데이터 세그먼트는 정크 동작(1053)에 의해 삽입되어, 데이터 패킷의 길이를 연장하거나 제어하고, 또는 필요에 따라 제거한다. 정크 동작(1053)은 패킷을 채우기에 부적절한 양의 데이터가 있을 때 특히 중요하다. 데이터 패킷 내에 삽입된 정크 데이터 세그먼트의 존재는 사이버 해적이 실제 데이터를 노이즈로부터 구별하는 것을 어렵게 한다. 여기에 사용되는 바와 같이, "정크" 패킷 또는 데이터 세그먼트는 완전히 무의미한 데이터(비트)로 구성된 패킷 또는 데이터 세그먼트이다. 이들 정크 비트는 의미 없는 비트의 바다에서 실제 데이터를 난처하게 하는 데이터 패킷의 스트림 내에 도입될 수 있다.
파싱 동작(1052)의 목적은 각각의 구성 구성요소를 처리하기 위해 데이터 패킷(1054)을 더 작은 데이터 패킷, 예를 들어, 데이터 서브패킷(1055, 1056)으로 파괴하는 것이다. 데이터 패킷(1054)을 더 작은 단편으로 분할하는 것은 다중 경로 전송을 지원하는 것과 같은, 즉 다중 및 상이한 경로를 통해 데이터 패킷을 전송하는 것과 같은, 그리고 상이한 암호화 방법을 사용하여 구성 서브패킷의 고유한 암호화를 촉진시키는 것과 같은 고유한 이점을 제공한다.
분할 동작은 임의의 알고리즘, 숫자 방법 또는 파싱 방법을 사용할 수 있다. 알고리즘은 정적 방정식을 나타내거나, 또는 들어오는 입력 데이터 패킷(1054)이 많은 서브패킷에 의해 처음 형성되었을 때의 시간(920) 및 시드 생성기(921)에 의해 생성된 수치 시드(929)와 같은 동적 변수 또는 수치 시드 또는 "상태"를 포함할 수 있으며, 이는 또한 데이터 패킷의 생성 시 시간(920)과 같은 상태에 의존할 수 있다. 예를 들어, 각각의 날짜가 단조롭게 오름차순으로 고유한 숫자로 변환되었다면, 모든 시드(929)는 고유하다. 시간(920) 및 시드(929)는 이용 가능한 방법의 목록, 즉 알고리즘(1050)으로부터 선택된 지정 알고리즘을 식별하는 데 사용될 수 있다. 패킷 분할 또는 비 혼합은 지정한 패킷을 생성하기 위해 정확하게 사용된 정밀한 역 순차적으로 실행되는 동일한 알고리즘을 사용하는, 혼합의 절차를 포함한다. 궁극적으로 사용된 모든 동작은 취소되지만, 그러나 반드시 하나의 단계에서는 아니다. 예를 들어, 스크램블된 암호화된 데이터 패킷은 해독되지만 스크램블된 채로 존재할 수 있다. 분할 동작(1051)에 의해 처리되면, 분할되지 않은 들어오는 데이터 패킷(1054)은 다중 데이터 패킷으로 변환되며, 예를 들어 상기 동작을 알고리즘으로 수행하기 위해 파싱 동작(1052)을 사용하여 고정된 길이의 패킷(1055, 1056)을 분할한다. 데이터 흐름도에 있어서, 분할 동작(1057)을 위해 도시된 심볼에 의해 여기에 도시되는 바와 같이, 도식적인 또는 심볼형 표현을 사용하는 파싱(1052) 및 정크 동작(1053)을 포함하는 이런 패킷 분할 동작(1051)을 설명하는 것이 편리하다.
따라서 여기에 사용되는 바와 같이, "분할"이라는 용어는 파싱을 포함하며, 이는 패킷을 2개 또는 그 이상의 패킷 또는 서브패킷으로의 분리를 지칭하며, 또한 이는 결과적인 "파싱된" 패킷에 정크 패킷 또는 서브패킷의 삽입 또는 결과적인 "파싱된" 패킷에 정크 패킷 또는 서브패킷의 삭제를 포함할 수도 있다.
도 60b에 도시된 역기능, 패킷-혼합 동작(1060)은 혼합된 패킷(1054)을 형성하기 위해 다중 패킷(1055, 1056)을 함께 조합한다. 패킷 분할과 마찬가지로, 패킷 혼합 동작은 임의의 알고리즘, 수치 방법 또는 혼합 방법을 사용할 수 있다. 상기 알고리즘은 정적 방정식을 나타낼 수 있거나, 들어오는 데이터 패킷(1055, 1056)이 혼합될 때의 조건을 지정하기 위해 사용되는 시간(920)과 같은 동적 변수 또는 수치 시드 또는 "상태"를 포함할 수 있다. 데이터 패킷을 생성하는 데 사용되는 혼합 동작은 시간(920)과 같은 상태에 의존할 수도 있는 시드 생성기(921)에 의해 생성되는 수치 시드(929)를 이용할 수 있다. 시간(920) 및 시드(929)는 사용 가능한 혼합 방법의 목록, 즉 혼합 알고리즘(1050)으로부터 생성될 수 있다. 데이터 흐름도에 있어서, 혼합 동작(1061)을 위해 도시된 심볼에 의해 여기에 도시된 바와 같이, 개략적인 또는 심볼형 표현을 사용하여 이 패킷 혼합 동작을 설명하는 것이 편리하다.
본 발명에 따라, 패킷 혼합 및 분할은 다수의 가능한 알고리즘 중 임의를 이용할 수 있다. 도 61a는 연결(concatenation), 인터리빙(interleaving) 또는 알고리즘 방법을 포함하는 다수의 가능한 혼합 방법 중 3개를 도시하고 있다. 연결 시, 데이터 패킷(1056)의 데이터 세그먼트 시컨스는 데이터 패킷(1055)의 단부에 추가되어, 혼합 패킷(1054)을 생성한다. 인터리빙에 있어서, 데이터 패킷(1055, 1056)의 데이터 세그먼트는 교호하는 형태로, 즉 1A, 2A, 1B, 2B 등에 결합되어, 혼합 데이터 패킷(1065)을 형성한다. 패킷 혼합을 위해 사용되는 다른 방법은 알고리즘을 포함한다. 도시된 예에 있어서, 인터리빙된 반사 대칭을 포함하는 알고리즘은 혼합된 패킷(1066)의 전반부에서 1A, 2A, 1B, 2B, 1C, 2C의 순서로 데이터 세그먼트를 교차하고, 후반부에서 반대 순서로, 즉 2D, 1D, 2E, 1E, 2F, 1F의 순서로 교차한다.
본 발명에 따라 연결을 사용하는 패킷 혼합의 애플리케이션 예가 도 61b에 도시되어 있다. 도시된 바와 같이, 시간(t0)에서 혼합되지 않은 데이터 패킷(1055, 1056)은 혼합 동작(1061)을 사용하여 서버(1011) 상에 호스트된 통신 노드(N0,0)에서 혼합된다. 2A 내지 2F 가 이어지는 시컨스(1A 내지 1F)를 포함하는 결과적인 병합된 데이터 패킷은, 그 후 서버(1016) 상에 호스트된 통신 노드(N0,f)에서, 패킷 분할 동작(1057)이 혼합된 데이터 패킷(1066)의 구성요소를 본래의 데이터 패킷(1055, 12056) 내로 분리시킬 때까지, 모든 시간(998)에 대해 그 구성이 정적인 변경되지 않은 평문을 포함하는 서버(1011 내지 1016)의 네트워크를 통해 전송된다.
유사하게, 본 발명에 따른 인터리빙된 혼합의 적용의 예가 도 61c에 도시되어 있다. 이전의 예와 동일한 순서로, 결과적인 혼합 패킷(1066)은 시컨스 1A, 1B, 2A, 2B, 3A, 3B ....를 갖는다. 혼합된 패킷이 연결된 예와 상이하더라도, 패킷 데이터 분할 동작(1057)은 본래의 혼합되지 않은 데이터 패킷(1055, 1056)을 복구할 수 있는데, 그 이유는 혼합 동작에 사용된 혼합 알고리즘 및 시간, 상태 또는 시드의 지식이 데이터 패킷(1066)의 일부로서 또는 시간(t0)에서의 패킷 통신 전에 서버(1016) 상에 호스트된 통신 노드(N0,f)로 전달되기 때문이다.
스크램블된 혼합 - 데이터 세그먼트의 다양한 조합으로 데이터 패킷의 분할 및 혼합을 이용하는 패킷 통신의 기재된 방법은, 기재된 발명에 따라 다양한 방법으로 패킷 스크램블링과 조합될 수 있다. 도 62a에 있어서, 언스크램블된 평문 데이터 패킷(1055, 1056)은 혼합 동작(1061)을 사용하여 혼합되어, 인터리빙된 평문을 사용하여 형성된 도시된 예에서 혼합된 데이터 패킷(1067)으로 나타난다. 혼합 후, 데이터 패킷(1067)은 스크램블된 평문 데이터 패킷(1068)을 생성하기 위해 스크램블링 동작(926)에 의해 스크램블된다. 패킷 혼합 동작(1061)과 패킷 스크램블링(926)의 조합된 시컨스는 스크램블링이 뒤따르는 혼합 및 스크램블링 동작(1070)을 포함하는 혼합 및 스크램블링을 포함한다.
본 발명에 따른 대안적인 실시예에 있어서, 개별 데이터 패킷은 도 62b에 도시된 바와 같이 먼저 스크램블되고 그 후 혼합된다. 이 실행에 있어서, 스크램블되지 않은 평문 데이터 패킷(1055, 1056)은 분리된 그리고 독립적인 스크램블링 동작(926)에 의해 먼저 스크램블되고, 이에 따라 대응하는 스크램블된 평문 데이터 패킷(1008, 1009)으로 나타난다. 이들 스크램블된 패킷은 그 후 혼합 동작(1061)에 의해 함께 혼합되어, 혼합 스크램블된 데이터 패킷(1069)으로 나타난다.
기재된 바와 같이 혼합 및 스크램블링의 조합된 사용은 정적 또는 동적 SDNP 통신 네트워크에 통합될 수 있다. 도 63에 있어서, 평문 데이터 패킷(1055, 1056)은 서버(1011) 상에 호스트된 통신 노드(N0,0)에 입력되고, 이는 혼합 및 스크램블링 동작(1070)을 수행하며, 혼합된 스크램블된 패킷(1068)을 형성하기 위해 스크램블링 동작(926)이 이어지는 혼합 동작(1061)을 포함한다. 패킷 콘텐트는 혼합된 스크램블된 패킷(1068)이 서버(1011 내지 1016)를 횡단함에 따라, 모든 시간(tn)에서 일정하게 유지된다. 서버(1016)에서 호스트된 최종 통신 노드(N0,f)는 그 후 언스크램블링 및 분할 동작(1044)으로서 표시되는 분할 동작(1057)이 이어지는 언스크램블링 동작(928)을 수행한다.
도 64는 SDNP 통신 네트워크에서 동적 스크램블 혼합의 예를 도시하고 있다. 종래의 정적 SDNP 예에서처럼, 평문 데이터 패킷(1055, 1056)은 서버(1011) 상에 호스트된 통신 노드(N0,0)에 입력되며, 이는 스크램블링이 이어지는 혼합을 포함하는, 혼합 및 스크램블링 동작(1070)을 수행한다. 혼합된 스크램블된 패킷은 상태(992)에 대응하는 시간(t2)에서 혼합된 스크램블된 패킷(1072)을 형성하기 위해, 서버(1012)에서 US 재스크램블링 동작(1010)을 받는다. 그 후 서버(1013, 1014)는 데이터 패킷을 반복적으로 언스크램블링하고 그 후 재스크램블하기 위해, US 재스크램블링 동작(1017)을 수행한다. 상기 US 재스크램블링 동작은 서버(1015) 상에 호스트된 통신 노드(N0.4)에서 반복되어, 상태(995)에 대응하는 시간(t5)에서 새롭게 재스크램블된 데이터 패킷(1073)으로 나타난다. 서버(1016)에서 호스트된 최종 통신 노드(N0,f)는 그 후 패킷(1055, 1056)을 복구하기 위해 언스크램블링 분할 동작(1044)을 수행한다. 도시된 동적 네트워크 실행에 있어서, 각각의 US 재스크램블링 동작(1017)에 사용된 언스크램블링 동작은 이전의 서버에서 생성된 데이터 패킷의 시간 또는 상태를 이용하고, 그 후 현재 시간에서 상기 데이터 패킷을 재스크램블한다. 예를 들어, 서버(1012)에서 시간(t2)에 생성된 데이터 패킷(1072)은 시간(t2)과 관련된 상태를 사용하여 서버(1013)에서 재스크램블되며, 즉 언스크램블되며, 그 후 현재 시간(도시되지 않음)과 관련된 상태를 사용하여 다시 스크램블된다. 따라서 도 64는 혼합 및 분할 동작이 스크램블링 및 언스크램블링의 반복적인 연속적인 동작을 중첩할 수 있다는 것을 예로서 도시하고 있다.
암호화된 스크램블된 혼합 - 패킷 스크램블링과 조합된 서브패킷의 다양한 조합으로 데이터 패킷의 분할 및 혼합을 사용하는 패킷의 기재된 통신 방법은 기재된 발명에 따라 암호화와 조합될 수 있다. 도 65는 혼합, 스크램블링 및 암호화 및 그 대응하는 역기능을 조합하는 기능의 몇 가지 예를 도시하고 있다. 하나의 예는 스크램블링 동작(926)이 뒤따르는 혼합 동작(1061) 및 마지막으로 암호화 동작(1026)의 시컨스를 포함하는, 스크램블링 암호화 또는 MSE 동작(1075)을 혼합하는 것이다. 역기능, 해독 언스크램블링 분할 또는 DUS 동작(1076)은 동작의 역순, 즉 해독 동작(1032), 언스크램블링 동작(928), 및 분할 동작(1057)을 포함한다. MSE 동작(1075)의 출력 및 동작 DUS(1076)의 입력은 암호문을 포함한다. 본래의 내용을 통신하고 복구하기 위해, 암호문 패킷을 생성하는 데 사용된 동일한 공유 비밀, 수치 시드 및 암호화/해독 키는 이를 취소하기 위해 사용되어야만 한다.
중간 노드는 해독 동작(1032) 및 암호화 동작(1026)의 조합을 포함하는 재암호화 동작(1077)만을 포함할 수 있거나, 또는 해독 동작(1032), 언스크램블링 동작(928), 스크램블링 동작(926) 및 암호화 동작(1026)의 기능들을 순차적으로 포함하는 DUSE 동작을 포함할 수 있다. 재암호화 동작(1077) 및 DUSE 동작(1045)에서, 해독 동작(1032) 및 언스크램블링 동작(928)의 기능은 이전 시간 또는 상태에서 통신 노드의 시드 또는 키가 패킷을 이들에 전송할 것을 요구할 수 있다. 암호화 동작(1026) 및 재스크램블링 동작(926)의 기능은 현재 시간 또는 상태에서, 즉 통신 노드가 데이터 패킷을 "리프레시(refresh)"하는 시간에서 생성된 정보, 시드 및 키를 모두 사용할 수 있다. 데이터 패킷을 리프레싱은 사이버 공격이 데이터 패킷의 정보에 액세스하는 것을 더 어렵게 하는데, 그 이유는 새로이 난독화된 패킷 데이터와 코드를 파괴하기 위해 사용할 수 있는 시간이 단축되기 때문이다.
동적 조합 혼합, 스크램블링 및 암호화 및 이들의 역기능의 사용에 대한 일례가 도 66a에 도시되어 있으며, 여기서 2개의 데이터 패킷(1055, 1056)은 시간(t0)에서 서버(1011) 상에 호스트된 통신 노드(N0,0)에 들어간다. 상기 2개의 패킷은 동일한 종류의 데이터 타입, 즉 2개의 음성 패킷, 2개의 텍스트 메시지 파일, 2개의 문서, 2개의 소프트웨어 부분 등을 포함할 수 있거나, 또는 2개의 다른 유사하지 않은 타입의 정보, 예를 들어 하나의 음성 패킷 및 하나의 텍스트 파일, 하나의 텍스트 패킷, 및 하나의 비디오 또는 사진 이미지 등을 포함할 수 있다. 그 후, 키, 수치 시드 또는 다른 비밀을 생성하기 위한 상태(991) 정보를 사용하는 시간(t1)에서, 서버(1011) 상에 호스트된 통신 노드(N0,0)는 혼합 스크램블링 암호화(MSE) 동작(1075)을 수행한다. 그 결과는 암호문 포맷에서의 스크램블된 데이터 패킷이며, 이는 판독하기가 어렵고 또한 그것을 생성하는 데 사용된 상태 정보를 소유하고 있지 않은 임의의 관찰자에게 해석 가능하다. 또한 시간(t1)에서, 패킷 혼합이 발생한 시간 또는 상태를 나타내는 수치 시드는 혼합 정보 패킷 앞으로 이 정보를 송신하거나 또는 이 시드를 패킷 헤더(본 발명에서 이하에 기재됨)의 데이터 패킷 자체 내로 매립함으로써 마지막 노드(N0,f)를 통과한다.
데이터는 서버(1012) 상에 호스트된 통신 노드(N0,1)로 전달되며, 이는 시간(t1)에 대응하는 상태(991) 정보에 기초하여 들어오는 데이터를 해독 및 언스크램블링하고, 그 후 시간(t2)에 대응하는 상태(992) 정보에 기초하여 상기 데이터를 다시 스크램블링 및 암호화함으로써 보안을 리프레시하는 DUSE 동작(1045)을 수행한다. 상태 정보(991)가 데이터 패킷 또는 그 헤더에 이를 매립함으로써 최종 노드(N0,f)로 전달된다면, 상태 정보의 2개의 사본이 요구되며, 하나는 최종 노드(N0,f)에 의해 사용되고 혼합이 발생될 때의 상태(991)를 포함하는 것이며, 또한 데이터 패킷이 하나의 노드로부터 다음 노드로, 즉 상태(991)로부터 상태(992, 993) 등으로 홉할 때마다 변하는 DUSE 동작에 의해 사용되는 제2 상태가 요구된다. 들어오는 데이터 패킷 상에 수행된 마지막 동작의 상태를 사용하여, DUSE 동작(1045)은 암호화되지 않은 데이터 상에서 이를 먼저 해독하고, 재스크램블링을 수행하고, 그 후 데이터를 다시 암호화함으로써 재스크램블링을 수행하며, 즉 재스크램블링 동작은 재암호화 동작 내에 중첩된다. 결과적인 나가는 데이터 패킷은 하부의 평문(1080A)에 의해 표시된 암호화되지 않은 콘텐츠를 갖는 암호문(1080B)을 포함한다. DUSE 동작(1045)은 서버(1013, 1014 및 1015)에서 연속적으로 반복되어, 시간(t5)에서 평문(1081A)에 의해 표시된 하부의 암호화되지 않은 콘텐트를 갖는 암호문(1081B)으로 나타난다. 통신은 서버(1016) 상에 호스트된 통신 노드(N0,f)에 의해 완료되며, 이는 이를 마지막 리프레시하는 데 사용된 시간(t5)에 대응하는 상태(995) 정보에 기초하여 들어오는 데이터를 해독 언스크램블링 분할(DUS) 동작(1076), 해독, 언스크램블링하고, 그 후 혼합이 먼저 발생하였을 때 상태(991)에 따라 상기 패킷을 분할하는 동작을 수행한다. 중간 노드가 혼합 조건을 인식하지 못하기 때문에, 중간 노드에 액세스하는 네트워크 운영자조차도 혼합 시 사용된 조건을 알지 못한다. 시간(tf)에서 결과적인 평문 출력(1055, 1056)은 시간(t0)에서 시작하여 네트워크를 가로질러 송신된 데이터를 복구한다. 패킷이 각각의 노드(N0,x)(여기서, x는 0, 1, 2,....f)를 통과할 때 패킷의 콘텐트가 재스크램블되고 재암호화되었기 때문에, 통신되는 데이터 패킷을 가로채고 해석할 기회는 극도로 복잡하며 또한 해킹에 약간의 시간을 제공한다.
보안 통신을 설정하기 위한 보다 간단한 방법은 통신의 시작 시에 패킷의 혼합 및 스크램블링을 포함하지만, 그러나 재암호화의 반복 단계를 이용한다. 이전의 설명의 완전히 동적인 암호화된 스크램블링 및 혼합 예와는 달리, 도 66b는 서버(1011)에서의 정적 혼합 및 스크램블링을 서버(1011-1015)의 동적 암호화와 조합하여, 시간에 따른 암호화 변경만을 의미한다. 통신은 서버(1011) 상에 호스트된 통신 노드(N0,0)에 전달된 데이터 패킷(1055, 1056)으로 시작하는 시간(t0)에서 시작한다. 이전의 예에서처럼, 2개의 패킷은 음성 패킷, 텍스트 메시지, 문서, 소프트웨어, 비디오 또는 사진 이미지 등을 표시할 수 있다.
그 후, 키, 수치 시드 또는 다른 비밀을 생성하기 위해 상태(991) 정보를 사용하는 시간(t1)에서, 통신 노드(N0,0)는 혼합 스크램블링 암호화(MSE) 동작(1075)을 수행한다. 결과적인 암호문(1082B)은 암호문 포맷에서 판독 가능한 데이터 패킷이고, 이를 생성하는 데 사용된 상태 정보를 소유하지 않은 임의의 관찰자에게 판독 불가능하고 해석 가능하다. 평문(1082A)을 포함하는 하부 데이터 패킷은 스크램블되고, 심지어 암호화가 없더라도 상태 정보, 키, 시드 및 비밀 없이 소스 데이터, 텍스트, 그림 또는 사운드를 복구하려고 시도하는 사이버 해적에게는 이해할 수 없다.
그 후, 데이터는 서버(1012) 상에 호스트된 통신 노드(N0,1)로 전달되며, 이는 이전의 예에서와 같이 DUSE 동작을 수행하기보다는 입력 데이터를 단지 재암호화한다. 즉, 시간(t1)에 대응하는 상태(991) 정보에 기초하여 해독하고, 그 후 현재 시간(t2)에 대응하는 상태(992) 정보에 기초하여 다시 암호화한다. 재암호화 동작(1077)으로서 도시된 프로세스는, 이전의 평문(1082A)과 동일한 하부의 스크램블된 평문(1083A)을 갖는 암호문(1083B)을 포함하는 나가는 데이터 패킷으로 나타난다. 재암호화 동작(1077)은 서버(1013, 1014, 1015)에서 연속적으로 반복되어, 새로운 암호문으로 나타난다. 예를 들어, 암호문(1084B) 및 하부의 변경되지 않은 평문(1084A)은 서버(1013, 1014) 사이를 이동하는 데이터를 나타낸다. 상기 하부의 평문(1084A)은 시간(t1)에서의 통신 노드(N0,0)에서 MSE 동작(1075)에 의해 이것이 본래 스크램블되기 전에 변경되지 않는다. 그러나 통신 노드(N0,1) 및 노드(N0)에서의 재암호화는 통신 노드(N0,0)를 떠나기 때문에 암호문을 2번 변경했다.
정적 혼합 및 스크램블링 및 동적 암호화를 수행하고 또한 프로세스를 역전시키는 데 사용되는 공유 비밀은, 2개의 시간 또는 상태-서버(1011)에서의 정적 혼합 및 스크램블링을 위해 사용되며 또한 서버(1016)에서의 최종 DUS 동작(1076)에서 언스크램블링 및 분할에 필요한 시간(t1) 및 대응하는 상태(991), 및 서버(1012-1015)에서 각각의 재암호화 동작(1077)을 실행하기 위해 마지막 통신 노드에 의해 사용된 동적 시간 및 대응 상태, 데이터 패킷이 패킷 교환형 통신 네트워크를 횡단할 때 동적으로 그리고 지속적으로 변하는 상태를 요구한다. 최종 단계에서, 서버(1016)에서 호스트된 통신 노드(N0,f)에 의해 통신이 완료되며, 이는 평문 출력(1055, 1056), 시간(t0)에서 시작하는 네트워크를 가로질러 송신된 동일 데이터를 재생하기 위해 입력 데이터 패킷을 해독, 언스크램블링 및 분할(비 혼합)하는 DUS 동작(1045)을 수행한다.
패킷이 노드(N0,0)에서 암호화되어 각각의 노드 N0,1... N0,f-1를 통과할 때 재암호화되고, 노드(N0,f)에서 해독되기 때문에, 데이터가 오직 한번만 혼합되고 스크램블되더라도, 통신되는 데이터 패킷을 가로채고 해석할 기회는 극히 복잡하며 또한 해킹을 위한 시간을 거의 제공하지 않는다. 또한 본 출원에서 이미 기재된 바와 같이 데이터의 다중 소스의 혼합은 해킹 및 사이버 불법 복제에 대한 외부인의 시도를 더욱 혼동시키는데, 그 이유는 침입자는 다양한 데이터 단편이 무엇인지, 이들이 어디서 왔는지, 또는 이들이 어디로 향하는지 본질적으로 데이터 패킷의 세부 사항과 배경이 둘 다 부족하기 때문이다.
전송 중 데이터 패킷 콘텐트를 관리하는 다른 방법은 모든 단일 홉에서 "정상으로 돌아가기"이다. 도 66c에 도시된 이 방법에 있어서, 게이트웨이 노드를 제외하고, 모든 노드는 본질적으로 모든 홉에서의 전송을 위해 데이터 패킷을 완전히 재구축하는 MSE 동작(1075)이 즉시 뒤따르는, DUS 동작(1076)의 순차적 동작을 수행한다. 도시된 바와 같이, 들어오는 데이터 패킷(1055, 1056)은 상태(991)를 사용하여 시간(t1)에서 노드(N0,0)에 의해 먼저 혼합되어, 평문(1080Y)에 대응하는 암호문(1080Z)로 나타난다. 그 후, 암호문(1080Z)은 노드(N0,1)로 송신되고, 여기서 DUS 동작(1076)은 들어오는 패킷이 시간(t1)에 대응하는 상태(991)를 사용하여 생성되었다는 것을 식별하며, 도 66d에 상세히 도시된 바와 같이 이를 순차적으로 해독하고, 들어오는 암호문(1080Z)을 평문(1080Y)으로 변환한다. 그 후, 평문(1080Y)이 언스크램블되고, 이에 따라 분할(즉, 비 혼합)되어 본래의 데이터 패킷(1055, 1056)을 복원한다.
다음 네트워크 홉에 대비하여, 2개의 본래의 데이터 패킷은 다시 한번 혼합되고 스크램블되며, 이번에는 상태(992)에 대응하는 시간(t2)에서 선택된 알고리즘을 사용하여 평문(1080A)으로 나타나며, 이는 계속해서 암호화되어 노드(N0,1)로 송신될 준비가 이루어진 암호문(1080B)을 생성한다. 이 방법을 사용하여, 들어오는 데이터 패킷은 이들이 노드에 진입할 때마다 초기 정상 상태로 돌아가고 현재 상태에 대응하는 완전히 새로운 "리프레시" 상태로 떠난다. 이 방법에 있어서, 각 노드는 들어오는 패킷의 상태를 알고 있어야만 하며 데이터 전송 중에 사용된 임의의 이전 상태에 대한 지식을 요구하지 않는다.
혼합 및 분할 동작 - 도 60a 및 도 60b에 이미 도시된 상이한 타입의 데이터를 조합 및 분리하기 위해 패킷을 혼합 및 분할하는 프로세스는, "데이터 세그먼트의 보존"의 원리에 따르는 고정 길이의 패킷을 도시하고 있으며, 여기서 긴 데이터의 전체 길이 패킷(1054)은 이로부터 생성된 더 짧은 데이터 패킷(1055, 1056)의 합계로서 동일한 수의 데이터 세그먼트를 갖는다. 본질적으로, 데이터 세그먼트의 보존은 연속적인 혼합 및 분할 동작 중 데이터 세그먼트가 생성되거나 파괴되지 않는다는 것을 의미한다. 이 간단한 원리는 실시간 데이터의 양이 희박하고 하나의 완전한 패킷조차 채울 수 없기 때문에, 통신에 문제가 있다.
네트워크가 심하게 혼잡해질 수 있는 반대쪽 극단에 있어서, 서버는 긴 전파 지연을 부과하지 않고도 긴 패킷을 받아 들일 수 없어, 높은 대기 시간으로 나타난다. 이러한 이유 및 다른 이유로, 기재된 발명에 따른 데이터 패킷의 동적 혼합 및 분리는 다양한 길이의 데이터 패킷을 관리, 조합, 및 분리하는 수단을 제공하여, 데이터 패킷 출력의 수 및 길이뿐만 아니라 데이터 패킷의 입력의 길이 및 수 모두를 제어한다. 다른 목적지로 지향된 콘텐트를 포함하는 가변 길이 패킷의 사용은 해커를 더욱 혼란에 빠뜨려 네트워크에 보안을 추가한다. 도 67a에 도시된 바와 같이, 정크 삽입 및 삭제를 위한 파싱 동작(1087) 및 정크 동작(1088)은 단일 출력이나 또는 다중 출력 혼합 동작에 적용 가능한 혼합 데이터 패킷의 데이터 패킷 길이를 관리하고 제어하기 위해 결합하여 사용된다.
도 67a는 단일 출력 패킷 혼합의 예를 도시하고 있으며, 여기서 4-데이터 세그먼트 패킷(1090A, 1090C) 및 3-데이터 세그먼트 패킷(1090B)으로 도시된 예에서 가변 길이의 다중 입력은 혼합 동작(1086)을 사용하여 혼합되어 하나의 긴 데이터 패킷(1091)을 생성한다. 혼합 동작(1086)은 시드 생성기(921)에 의해 생성되었을 때 수치 시드(929)의 사용을 포함하는 혼합이 발생할 때 현재 시간 또는 상태(920)에 따라 혼합 알고리즘 목록(1085)으로부터 선택된다. 혼합 동작(1086) 중, 정크 동작(1088)은 선택된 알고리즘에 따라 정크 데이터 세그먼트를 데이터 패킷 출력(1091)에 삽입한다.
혼합 후, 긴 데이터 패킷(1091), 또는 대안적으로 파싱 동작(1092)으로부터 나타나는 서브패킷은 국부적으로, 예를 들어 다른 데이터 패킷이 도착하기를 기다리거나, 또는 통신 네트워크의 다른 노드로 전송될 수 있다. 저장 또는 라우팅 전에, 각각의 패킷 또는 서브패킷은 패킷을 식별하는 헤더 또는 서브 헤더가 "태그 지정(tagged)"되어 있다. 상기 태그는, 데이터 패킷의 콘텐트를 혼합, 스크램블, 암호화 또는 분할, 해독 해제 및 해독하는 방법을 포함하여 그 데이터를 갖고 있는 것이 무엇인지에 대해 이미 수신된 명령에 따라 처리될 수 있도록, 들어오는 패킷을 인식하는 데 중요하다. 데이터 패킷을 식별하고 태그하기 위해 데이터 패킷 헤더 및 서브 헤더의 사용은 본 출원의 후반부에 더욱 상세히 기재되어 있다.
따라서 혼란스러운 사이버 공격자와 함께, 파싱, 정크 및 비 정크 동작의 다른 역할은 데이터 패킷의 길이를 관리하는 것이다. 예를 들어, 최종적인 긴 데이터 패킷(1091)이 너무 길다면, 선택된 알고리즘에 따라, 파싱 동작(1087)은 상기 긴 데이터 패킷 출력(1091)을 더 짧은 단편들로 파괴한다. 상기 더 짧은 단편의 길이는 선택된 알고리즘에 의해 규정될 수 있으며, 예를 들어 "n"개의 서브패킷의 규칙적인 간격(1092)으로 병합된 긴 패킷으로 절단된다. 원하는 패킷 길이는 선험적으로 결정될 수 있거나, 또는 네트워크 상태에 기초할 수 있으며, 예를 들어 최대 허용 길이는 네트워크 지연에 기초하여 계산될 수 있다. 예를 들어, 2개의 노드 사이의 전파 지연(Δtprop)이 어떤 값을 초과한다면, 데이터 패킷은 이를 더 작게 하도록 파싱되며, 예를 들어 긴 데이터 패킷(1091)은 동작(1092)을 "n개의" 서브패킷으로 파싱함으로써 규칙적인 간격으로 파괴된다.
긴 패킷이 어떻게 파싱되는지와는 관계없이, 다중 출력 혼합 동작은 다중 데이터 패킷 출력, 예를 들어 도 67b에 도시된 바와 같이 데이터 패킷(1093A, 1093B, 1093C)을 생성한다. 도시된 프로세스에서, 정크 데이터는 제어되거나 고정된 길이의 서브패킷을 생성하기 위해 서브패킷 내에 삽입될 수 있다. 데이터 패킷 또는 서브패킷의 각각의 세그먼트, 예를 들어 1A, 1B, 1C 등은 그 값이나 내용이 아니라 패킷의 "슬롯"위치가 아니라 패킷에서 그 "슬롯" 위치에 의해 식별된다. 예를 들어 긴 데이터 패킷(1091)은 슬롯(1, 4, 7, 8, 9, 11, 12, 13, 15 및 17)에 존재하는 데이터를 갖는 18개의 데이터 슬롯을 포함하는 반면에, 서브패킷(1093A)은 제1 및 제4 슬롯에 실제 데이터 콘텐트 또는 오디오를 포함하는 단지 6개의 긴 슬롯이다.
편의상, 다중 입력 단일 출력(MISO) 혼합 동작은 여기에서 기호(1089)로 기호로 표현되는 반면에, 다중 입력 다중 출력(MIMO) 혼합 동작은 이전과 같이 도 60a에 도시된 더욱 이상적인 예와 유사하게 심볼(1094)에 의해 기호로 표시된다. 여기에 기재된 발명에 따라, 다중-입력 단일-출력 혼합(1089)은 보안 라스트 마일에 유용한 반면에, 다중-입력 다중-출력 혼합(1094)은 본 출원에서 나중에 기재되는 다중 경로 및 메시형 라우팅 네트워크의 실현에 유용하다. 기재된 SDNP 네트워크 요소들 및 동작의 분류에 있어서, MISO 혼합 동작(1089)은 MIMO 혼합 동작(1094)의 특별한 경우로 간주될 수 있다.
다중 입력 단일 출력 또는 MISO 혼합에 대한 역기능은 단일 입력 다중 출력 또는 SIMO 분할이다. 도 67c에 도시된 일 실시예에 있어서, 단일의 긴 데이터 패킷(1091)은, 분할 동작(1100)에 의해, 고정 길이 또는 가변 길이의 서브패킷을 포함할 수 있는 다중 데이터 서브패킷(1103A, 1103B 및 1103C)으로 분할된다. 도시된 예에 있어서, 서브패킷(1103A)은 4개의 데이터 슬롯을 포함하는 반면에, 서브패킷(1103B, 1103C)은 단지 3개의 슬롯을 각각 포함한다.
도 67d에 도시된 제2 실시예에 있어서, 단일의 긴 데이터 패킷(1091)은 전체 데이터 패킷을 채우기 위해 부적절한 데이터가 존재할 때, 정크 데이터 세그먼트를 필러로서 사용하여 분할 동작(1105)에 의해 동일한 고정된 길이의 다중 서브=패킷(1108A, 1108B, 1108C)으로 분할된다. 두 예 모두에 있어서, 들어오는 데이터 패킷이 생성될 때 사용된 시간 또는 상태(920) 및 수치 시드(929)는 표(1085)로부터 혼합 알고리즘을 선택하고 또한 분할 동작(1100, 1105)을 실행하는 데 필요한 파라미터를 설정하도록 요구된다. 혼합 알고리즘 표가 "혼합"이라는 용어를 참고하더라도, 동일한 알고리즘 표가 "분할"을 수행하는 데 필요한 역기능을 식별하고 선택하는 데 사용되며, 즉 혼합 알고리즘 표(1085)는 데이터 패킷을 혼합하고 데이터 패킷을 분할하는 데 필요한 정보를 포함한다. 두 기능이 역순으로 수행되는 동일한 단계를 포함하기 때문에, 표(1085)는 "혼합/분할"알고리즘 표(1085)로 재명명될 수도 있다. 그러나 명확함을 위해, 상기 표는 역기능이 아닌 기능에 의해서만 라벨이 지정된다. 데이터 패킷 혼합 및 분할을 수행하는 데 사용되는 방법은 알고리즘에 의해 이루어지며, 이들이 일반적으로 입력 또는 출력으로서 2개 이상의 데이터 패킷을 포함한다는 것을 제외하고는 이미 기재된 스크램블링 알고리즘과 많은 방법에서 유사하다. 단일 데이터 패킷 상에서 혼합 또는 분할 동작이 수행될 수 있는 하나의 예외적인 경우는 정크 데이터를 삽입하거나 제거하는 경우이다.
도 67e는 하나의 긴 데이터 패킷(1091)에 서브패킷 A로 라벨링된 1090A, 서브패킷 B로 라벨링된 1090B, 및 서브패킷 C로 라벨링된 1090C의 3개의 들어오는 데이터 패킷을 하나의 긴 데이터 패킷(1091)에 혼합하고, 그 후 상기 긴 데이터 패킷(1091)을 서브패킷 D로 라벨링된 1090D, 서브패킷 E로 라벨링된 1090E, 서브패킷 F로 라벨링된 1090F의 3개의 상이한 나가는 서브패킷으로 파싱한다. 그래픽으로 표현되는 바와 같이, 혼합 동작(1094)은 들어오는 데이터 패킷의 슬롯으로부터의 데이터 콘텐츠를 긴 패킷으로 재맵핑하고, 또한 일부 중간 슬롯 내에 정크 데이터를 삽입한다. 예를 들어 도시된 바와 같이, 데이터 세그먼트(1C)를 포함하는 서브패킷(1090A)의 제3 슬롯은 긴 데이터 패킷(1091)의 제11 슬롯으로 이동되고, 데이터 세그먼트(2F)를 포함하는 서브패킷(1090B)의 제3 슬롯은 긴 데이터의 제17 슬롯으로 이동되며, 데이터 세그먼트(3D)를 포함하는 서브패킷(1090C)의 제2 슬롯은 긴 데이터 패킷(1091)의 제12 슬롯으로 이동된다. 따라서 완전한 혼합 알고리즘은 이하의 예에 의해 도시된 바와 같은 대체 표를 포함한다:
긴 패킷 슬롯# 들어오는 서브패킷# 들어오는 서브패킷 슬롯# 슬롯에 포함된 데이터
슬롯 1 서브패킷 A 슬롯 1 1A
슬롯 2 정크 데이터 삽입
슬롯 3 정크 데이터 삽입
슬롯 4 서브패킷 A 슬롯 2 1B
슬롯 5 정크 데이터 삽입
슬롯 6 정크 데이터 삽입
슬롯 7 서브패킷 A 슬롯 3 1C
슬롯 8 서브패킷 B 슬롯 1 2C
슬롯 9 서브패킷 C 슬롯 1 3C
슬롯 10 정크 데이터 삽입
슬롯 11 서브패킷 B 슬롯 2 2D
슬롯 12 서브패킷 C 슬롯 2 3D
슬롯 13 서브패킷 A 슬롯 4 1E
슬롯 14 정크 데이터 삽입
슬롯 15 서브패킷 C 슬롯 3 3E
슬롯 16 정크 데이터 삽입
슬롯 17 서브패킷 B 슬롯 3 2F
슬롯 18 서브패킷 C 슬롯 4 정크
따라서 일반적으로 혼합 동작의 기능은, 혼합된 패킷 또는 긴 패킷에서 어느 슬롯에 들어오는 데이터가 삽입되는지 정의하고 또한 혼합 패킷의 어느 슬롯에 정크가 포함되는지 정의하는 것이다.
알고리즘의 표 표시는 들어오는 데이터 서브패킷을 긴 데이터 패킷으로의 임의이 재맵핑하는 것이 가능하다는 것을 나타내기에 예시적이다. 혼합 동작(1094)의 일부로서, 파싱 동작(1087)이 다음으로 수행되어, 긴 데이터 패킷(1091)을 3개의 동일한 길이 단편으로 절단하여(1092), 나가는 서브패킷(1093D, 1093E, 1093F)을 생성하며, 대응되게 서브패킷 D, 서브패킷 E, 및 서브패킷 F로 라벨링된다.
도 67f는 이전의 파싱 동작(1087)으로부터 나타나는 3개의 동일한 길이의 서브패킷(1093D, 1093E 및 1093F)으로 시작하는 분할 또는 "비 혼합" 동작(1101)을 수행하고, 또한 아래의 표에 상세히 기재되는 바와 같이 상이한 길이의 새로운 서브패킷(1103A, 1103B, 1103C)을 생성하기 위해 데이터를 재맵핑하는 알고리즘을 도시하고 있다. 파싱 동작의 목적은 긴 패킷을 로컬 저장소의 더 작은 크기 또는 더 짧은 주기의 다양한 단편으로 분할하거나, 또는 데이터 전송을 위해 데이터를 연속화하는 것이다.
들어오는
서브패킷
들어오는
슬롯#
분할 출력 서브패킷 분할 출력 슬롯# 슬롯에 포함된
데이터


서브패킷 D


슬롯 1 서브패킷 G 슬롯 1 1A
슬롯 2 정크 데이터 제거
슬롯 3 정크 데이터 제거
슬롯 4 서브패킷 G 슬롯 2 1B
슬롯 5 정크 데이터 제거
슬롯 6 정크 데이터 제거


서브패킷 E


슬롯 1 서브패킷 G 슬롯 3 1C
슬롯 2 서브패킷 H 슬롯 1 2C
슬롯 3 서브패킷 J 슬롯 1 3C
슬롯 4 정크 데이터 제거
슬롯 5 서브패킷 H 슬롯 2 2D
슬롯 6 서브패킷 J 슬롯 2 3D


서브패킷 F


슬롯 1 서브패킷 G 슬롯 4 1E
슬롯 2 정크 데이터 제거
슬롯 3 서브패킷 J 슬롯 3 3E
슬롯 4 정크 데이터 제거
슬롯 5 서브패킷 H 슬롯 3 2F
슬롯 6 정크 데이터 제거
도시된 바와 같이, 서브패킷 G로서 라벨링된 서브패킷(1103A)은 4개의 슬롯을 포함하며, 슬롯 1은 긴 패킷(1091)의 슬롯 1에 대응하는 서브패킷 D의 슬롯 1로부터 데이터 세그먼트(1A)로 채워지고, 슬롯 2는 긴 패킷(1091)의 슬롯(4)에 대응하는 서브패킷 D의 슬롯 4로부터 데이터 세그먼트(1B)로 채워지며, 슬롯 3은 긴 패킷(1091)의 슬롯 7에 대응하는 서브패킷 E의 슬롯 1로부터 데이터 세그먼트(1C)로 채워지고, 슬롯 4는 긴 패킷(1091)의 슬롯(13)에 대응하는 서브패킷 E의 슬롯(1)으로부터 데이터 세그먼트(1E)로 채워진다. 마찬가지로, 서브패킷 H로 라벨링된 서브패킷(1103B)은 3개의 슬롯을 포함하며, 제1 슬롯은 서브패킷 E의 제2 슬롯으로부터 데이터 세그먼트(2C)를 포함하고, 제2 슬롯은 서브패킷 E의 제5 슬롯으로부터 데이터 세그먼트(2D)를 포함하며, 제3 슬롯은 서브패킷 F의 제5 슬롯으로부터 데이터 세그먼트(2F)를 포함한다. 슬롯 1에서, 데이터 세그먼트(3C)는 서브패킷 E의 슬롯 6으로부터 나온다. 슬롯 2에서, 데이터 세그먼트(3D)는 서브패킷 E의 슬롯 6으로부터 나온다. 서브패킷 J의 슬롯 3에서, 데이터 세그먼트(3E)는 서브패킷 F의 슬롯 3으로부터 나온다.
따라서 이러한 분할 알고리즘은(a) 얼마나 많은 분할 서브패킷이 있을지, (b) 각각의 분할 서브패킷에 얼마나 많은 슬롯이 있을지, (c) 긴 패킷의 데이터가 분할 서브패킷의 어느 슬롯에 들어갈지, (d) 정크 데이터를 포함하고 있기 때문에 어느 슬롯이 제거될지, 및(e) 정크 데이터를 포함하는 새로운 슬롯이 도입된다면, 지정한 길이의 서브패킷을 생성하는 것을 촉진시키는 것이 가능할지를 정의한다. 혼합 동작을 따르는 분할 동작이 있는 경우, 분할 패킷에서 서브패킷 수는 정크 데이터가 제거되거나 삽입되지 않는 한, 이들이 혼합되기 전에, 패킷의 서브패킷 수와 같아야만 한다.
본 발명에 따라 이루어진 기재된 혼합 및 분리 동작의 역할은, 네트워크의 모든 노드가 어떤 동작 순차적으로 수행되어야 하는지를 알고 있는 통보를 갖는 임의의 네트워크를 통해 단편화된 데이터 전송을 실행하도록 채택될 수 있다. 이미 도 61b에 도시된 바와 같은 단일 루트 전송에서, 데이터 패킷(1055, 1056)은 상이한 발신자 또는 소스로부터 상이한 대화 또는 코무니케를 나타낸다. 일단 병합되었다면, 긴 데이터 패킷 또는 그 파싱된 버전은 네트워크를 통해 전송할 준비가 된다. 이러한 기능은 다중-단일-출력 통신 MISO 노드로 간주될 수 있다.
본래의 데이터 패킷은 단일의 다중 출력 또는 SIMO 통신 노드인 역기능에 의해 복구되어, 분할을 수행한다. 단일 루트 통신의 데이터 패킷이 최종 목적지에 도달하였다면, 이들 긴 패킷 데이터는 마지막으로 분할되고, 또한 정크가 제거되어 본래 데이터 패킷이 재구성된다. 혼합된 데이터는 반드시 동일한 데이터 타입일 필요는 없다. 예를 들어, 한 명의 발신자가 전화로 말하고 동시에 문자 메시지를 보낼 수 있으며, 이에 따라 동시에 2개의 상이한 데이터 스트림을 생성하거나 수신할 수 있다. 그러나 분할된 데이터 패킷이 네트워크에서 혼합되지 않은 상태로 내향하여 계속 라우팅된다면, 데이터 패킷에 스팸 데이터가 포함되어, 데이터 스니핑을 사용할 수 없게 만든다.
동종 데이터의 전송에 있어서, 보안은 주로 도 64에 표시된 스크램블링을 통해 또는 도 66a에 도시된 바와 같이 스크램블링과 암호화의 조합을 통해 달성된다. 두 예에서 사용된 스크램블링에 의해 뒤따르는 혼합의 조합은 도 67g의 예시적인 도시에서 추가로 서술되며, 여기서 혼합 동작(1094)은 언스크램블된 긴 데이터 패킷(1091)을 형성하기 위해 들어오는 데이터 서브패킷(1090A, 1090B, 1090C)을 혼합한다. 그 후 스크램블링 동작(926)은 이 예에서는 하나의 데이터 슬롯에 의해 우측으로 1 데이터 슬롯씩 선형 위상 시프트를 수행하며, 예를 들어 언스크램블된 패킷의 데이터(1A)는 스크램블된 패킷에서 슬롯 2로 이동하고, 데이터(1C)는 스크램블된 패키지에서 슬롯 7로 이동하고 슬롯 8로 계속해서 이동하여, 스크램블된 긴 데이터 패킷(1107)을 생성한다.
그 후, 파싱 동작(1087)은 출력된 서브패킷(1093G, 1093H, 1093J)을 생성하기 위해 제6 및 제12 슬롯 후에 스크램블된 긴 데이터 패킷(1107)을 절단선(1092)을 따라 절단한다. 위상 이동의 결과는 출력된 서브패킷의 데이터 위치에 영향을 미칠 뿐만 아니라 실제로 패킷의 콘텐트를 변경한다. 예를 들어, 언스크램블된 긴 데이터 패킷(1107)에서 슬롯 위치(12)의 데이터 세그먼트(3D)가 스크램블링 후 위치 13으로 이동하였을 때, 제12 슬롯 이후 절단선(1092)에 위치된 파싱 동작(1087)은 데이터 세그먼트의 시컨스(1C-2C-3C-J-2D-3D)를 갖는 도 67e의 서브패킷(1093E)에 대해 서브패킷(1093H)과 그 새로운 데이터 세그먼트의 시컨스(J-1C-2C-3C-J-2D)(여기서, J는 정크 데이터를 나타냄)의 비교에 의해 달성되는 바와 같이, 자연스럽게 데이터 서브패킷(1093H 내지 1093J)을 탈락시킨다.
도 67h는 알고리즘 혼합, 긴 데이터 패킷을 형성하기 위해 서브패킷으로부터 들어오는 데이터의 맵핑과 후속의 스크램블링 알고리즘의 조합을 도시하고 있으며, 상기 후속 스크램블링 알고리즘은 단지 맵핑 알고리즘을 변경함으로써 혼합 및 스크램블링 동작을 단일 단계로 병합함으로써 동일하게 재생될 수 있다. 하이브리드 혼합 및 스크램블링 동작(1094A)은, 이것이 맵핑 동안 긴 데이터 패킷(1107)에서 우측으로 한 위치만큼 데이터를 탈락시키는 것을 제외하고는 이전의 혼합 알고리즘과 동일하다. 예를 들어, 서브패킷(1090A)의 데이터 세그먼트(1A)는 슬롯 1보다는 오히려 긴 데이터 패킷(1107)의 슬롯 2 내로 맵핑되고, 서브패킷(1090C) 내의 데이터 세그먼트(3D)는 슬롯 12보다는 오히려 긴 데이터 패킷(1107)의 슬롯 13 내로 맵핑된다. 결과적인 출력된 서브패킷(1093G, 1093H, 1093J)은 도 67g에 도시된 스크램블링에 의해 이어지는 혼합 시컨스를 사용하여 출력된 서브패킷과 동일하다. 본질적으로, 그 후 혼합 스크램블 알고리즘은 다른 혼합 알고리즘을 나타낸다. 텍스트를 통해 결과적인 출력에 차이가 없기 때문에, 본 발명은 2개의 숫자 프로세스가 병합될 수 있다는 이해 하에 별도의 혼합 및 스크램블 동작을 계속 식별할 것이다. 마찬가지로, 데이터 패킷을 언스크램블링하고 그 후 분할하는 역 프로세스는 단일 단계에서 언스크램블링 및 분할을 모두 수행하는 단일 조합 동작으로 대체될 수 있음을 인식해야 한다.
단일 루트 데이터 전송에 있어서 데이터 패킷은 병렬 경로를 취할 수 없지만, 그러나 미디어 서버 사이 또는 클라이언트 디바이스와 클라우드 게이트웨이 사이의 단일 경로를 통해 직렬 형태로, 즉, 라스트 마일을 통한 데이터 전송으로 이동해야만 한다. 데이터 서브패킷이 네트워크 상으로 전송되기 전에, 이들은 표적 통신 노드가 상기 들어오는 패킷으로 수행할 동작을 지시할 수 있도록 패킷을 식별하기 위해 하나 또는 그 이상의 헤더로 태그 지정되어야만 한다. 이들 헤더에 포함된 포맷팅 및 정보가 본 발명에서 나중에 보다 상세하게 설명되더라도, 명확함을 위해 패킷 태깅의 간단한 실현이 도 67i에 도시되어 있다. 도시된 바와 같이, 일련의 데이터 패킷(1099A, 1099B, 1099C, 1099Z)은 통신 노드에 순차적으로 도착한다. 각각의 데이터 패킷은 1102A 와 같은 헤더 및 그 대응 데이터, 예를 들어 1090A를 포함한다.
데이터 패킷이 노드에 도달함에 따라, 동작(1600)은 처리를 위해 데이터로부터 헤더를 분리한다. 들어오는 제1 패킷(1099A)에 대해 도시된 바와 같이, Hdr A로 라벨링된 헤더(1102A)는 데이터 패킷(1099A)으로부터 분리되며, 그 후 통신 노드가 패킷(1099A) 상에 임의의 명령을 수신했는지를 결정하는 태그 판독기(reader) 동작(1602) 내로 공급된다. 패킷(1099A)에 관해 임의의 명령을 수신하지 않았다면, 대응하는 데이터는 폐기된다. 이것은, 예를 들어 서브패킷 Z로 라벨링된 서브패킷(1092)에 의해 도시되어 있으며, 이는 통신 노드에 의해 수신된 임의의 명령과 관련 없는 대화(6, 7, 8, 9)로부터의 데이터를 포함하고 있다. 그러나 데이터 패킷이 "예상"된다면, 즉 그 태그가 다른 서버로부터의 통신 노드에 의해 이전에 수신된 명령과 일치한다면, 인식된 데이터 패킷, 이 경우에는 서브패킷(1090A, 1090B 및 1090C)은 혼합 동작(1089)에 송신된다. 그 후, 들어오는 데이터 패킷에 대해 이미 선택된 적절한 알고리즘은 혼합 알고리즘 표(1050)로부터 혼합 동작(1089) 내로 로딩된다. 환언하면, 통신 노드는 Hdr A, Hdr B, Hdr C 에 의해 식별된 3개의 패킷을 각각 수신할 때, 표(1050)에서 특별한 혼합 알고리즘에 따라 3개의 패킷을 혼합할 것을 이미 명령하였다. 전술한 바와 같이, 이 혼합 알고리즘은 스크램블링 동작을 포함할 수 있다.
본 발명에 따르면, 혼합 동작(1059)은 그 후 데이터 서브패킷(1093D, 1093E, 1093F)을 순차적으로 출력하며, 그 각각은 네트워크에서 다음 통신 노드로 통신할 준비가 된 데이터 패킷(1099D, 1099E, 1099F)을 생산하도록 새로운 식별 헤더, 즉 Hdr D, Hdr E 및 Hdr F로 태그된다. 단일 루트 통신에서 이러한 데이터 패킷은 동일한 루트를 따라 순차적으로 표적 목적지로 전송된다. 흐름도가 태그가 혼합을 위해 패킷을 식별하는 데 사용되는 방법을 나타내고 있더라도, 태그 식별 방법은 지정한 스크램블링 및 암호화 동작과 그리고 그 역기능 해독, 언스크램블링, 및 분할을 실행하기에 동일하다.
혼합 및 분리 동작은 다중 출력 혼합 및 분할 동작을 사용하여 다음에 설명하는 다중 루트 및 메시형 전송에 적용할 수 있다. 도 67f에서 SIMO 분할 기호(1101)의 바깥 쪽을 향하는 화살표로 나타낸 다양한 출력은 상이한 방향, 경로, 및 루트로 네트워크를 가로질러 데이터 패킷을 지향시키는 데 사용될 수 있다. 통신 노드에 의해 수신된 명령은 각각의 분할 패킷이 송신될 노드의 신원뿐만 아니라 분할 패킷의 각각에 헤더로서 적용되도록 태그를 지정한다. 수신 노드는 또한 패킷을 예상하도록 지시받는다. 유사하게, 도 67b에 도시된 다중 입력 다중 출력 혼합 동작(1094)이 다중 루트 통신에 적용될 수 있다. 본 출원의 나중에 도시된 바와 같이, MISO 및 MIMO 데이터 패킷 혼합과 SIMO 데이터 패킷 분할은 다중 루트 및 메시형 라우팅의 구현 시 핵심 요소이다. 패킷 스크램블링 및 암호화가 없더라도, 다중 경로 및 메시형 데이터 패킷 라우팅은 네트워크 상의 사이버 해적, 패킷 스니핑, 중간 공격자에 의한 의미 있는 데이터 가로챔의 위험을 상당히 감소시키는데, 그 이유는 하나의 통신 노드가 전체 대화를 운반하거나 또는 그 전체에서 임의의 데이터를 수신하거나 전송하기 때문이다. 도시 목적 상, 기재된 도면에 도시된 서브패킷의 수는 단지 설명을 위한 것이다. 통신되는 패킷의 실제 개수는 수십, 수백 또는 수천 개의 서브패킷을 포함할 수 있다.
패킷 라우팅 - 지금까지 본 출원 전반에 걸쳐 설명된 바와 같이, 단일 경로는 인터넷과 같은 패킷 교환형 기반 네트워크 통신에 사용되는 데이터 패킷의 직렬 스트림을 운반한다. 이 경로는 시간에 따라 달라질 수 있지만, 패킷 스니핑에 의한 데이터 스트림 가로챔은 적어도 일정 시간 간격으로 일관된 직렬 정보의 완전한 데이터 패킷을 사이버 해적에게 제공한다. 본 발명에 따라 기재된 SDNP 통신에 사용되는 스크램블링 및 암호화 없이, 일단 가로채진 데이터 패킷의 임의의 시컨스는 효과적이고 반복된 사이버 공격을 가능하게 하는 중간 공격자에서 쉽게 해석될 수 있다.
이러한 단일 루트 통신은 인터넷, VoIP 및 OTT 통신의 근간이며, 또한 인터넷 기반 통신은 오늘날 매우 불안정하다. 송신된 연속적인 패킷이 소스와 목적지 통신 노드 근처에서 상이한 루트를 취할 수 있더라도, 동일한 패킷을 동일한 루트를 따르고 또한 동일한 서버를 통해 전송할 기회는 점점 더 커질 수 있는데, 그 이유는 인터넷에서의 패킷 라우팅이 서비스 공급자에 의해 결정되기 때문이다. 패킷의 라우팅을 다시 그 소스를 행해 간단히 추적하고 그 후 소스 근처에서 패킷을 스니핑함으로써, 동일한 대화 및 데이터 스트림의 다중 패킷을 가로챌 기회가 극적으로 증가하는데, 그 이유는 통신이 단일의 지리 기반 인터넷 서비스 공급자 또는 ISP 에 의해서만 운반되기 때문이다.
도 68a에 도시된 바와 같이, 단일 루트 통신(1110)은 통신 노드(Nu,v)로부터 다른 통신 노드, 이 경우 통신 노드(Nw,z)로의 직렬 데이터 흐름(1111)을 나타낸다. 경로는 시간에 따라 변할 수 있지만, 주어진 사례에서, 각각의 일관적인 패킷은 하나의 단일 경로를 따라 그 목적지로 천이하는 네트워크로 순차적으로 전송된다. 표기의 관점에서, 통신 노드(Nu,v)는 네트워크 "u"에 위치된 서버 "v"에 호스트된 통신 노드를 지정하는 반면에, 통신 노드(Nw,z)는 네트워크 "w"에 위치된 서버 "z"에서 호스트된 통신 노드를 지정한다. 네트워크 "u" 및 "w"는 다른 ISP 가 운영하는 클라우드를 나타낸다. 인터넷 라우팅의 중간에서의 데이터 패킷 라우팅은 목적지에 가까운 데이터 패킷으로서 임의의 ISP에 의해 운반될 수 있더라도, 이들은 언제나 공통 ISP 및 네트워크에 의해 운반되므로, 동일한 대화를 포함하는 연속적인 데이터 패킷을 추적하고 패킷 스니핑하는 것을 더 어렵게 한다. 이러한 점이 도 68b에 그래픽으로 예시되어 있으며, 여기서 단일 루트 통신(1111)은 단일 루트 통신 네트워크(1110)를 나타내는 일련의 서버(1118)를 통해 발생한다. 도시된 바와 같이, 통신은 "0"으로 번호가 매겨진 동일한 네트워크에서 네트워크(2) 상의 상이한 ISP 에 의해 운반된 통신 노드(N2,3)에 도달할 때까지, 통신 노드(N0,1, N0,2)를 통해 연속적으로 이동하는 통신 노드(N0,0)로부터 시작한다. 그 후, 데이터는 네트워크(1), 즉 통신 노드(N1,4, N1,f) 상에서 최종 노드로 송신된다. 따라서 전송 중 인터넷 상으로 처음 전송된 패킷 데이터는 다른 ISP의 네트워크 상으로 퍼지기 전에 서버(0)에 남아 있다. 마찬가지로, 데이터 패킷이 그 목적지에 접근함에 따라, 연속적인 패킷이 동일한 노드를 통해 이동할 가능성은 이들이 모두 ISP 네트워크(1)에 있기 때문에 증가한다.
본 발명에 따른 SDNP 통신의 일 실시예에 있어서, 인터넷 OTT 및 VoIP 통신에 사용되는 단일-경로 패킷 통신과는 매우 대조적으로, 데이터 패킷의 콘텐트는 공통 소스 또는 발신자로부터의 정보를 포함하는 일관적인 패킷에 의해 순차적으로 운반되지 않지만, 그러나 다중 소스 및 발신자로부터 발생하는 콘텐트를 동적으로 혼합 및 재혼합하는 단편화된 형태로, 상기 데이터는 정크 데이터 필러에 의해 데이터, 콘텐트, 음성, 비디오, 및 유사하지 않은 데이터 타입의 파일의 불완전한 토막을 모은다. 데이터 단편화 및 전송의 기재된 실현의 이점은 심지어 비 암호화된 그리고 언스크램블된 데이터 패킷이 해석하기가 거의 불가능하다는 것인데, 그 이유는 이들은 관련 없는 데이터 및 데이터 타입의 조합을 나타내기 때문이다.
도 68a에 도시된 바와 같이, 단편화된 데이터 패킷의 SDNP 통신은 단일 루트 전송(1110)에서처럼 직렬이 아니라, 다중 루트 전송(1112) 또는 "메시형 루트" 전송(1114)을 사용하는 병렬이다. 다중 루트 전송(1112)에 있어서, 2개 또는 그 이상의 패킷 교환형 통신 노드(Nu,v, Nw,z)의 어레이는 다중 루트(1113A, 1113B, 1113C, 1113D, 1113E)를 통해 동시에 데이터를 설정하고 전송한다. 5개의 루트가 표시되어 있지만, 전송은 필요하다면 2개의 루트 및 최대 12개 또는 그 이상까지 발생할 수 있다. 통신 네트워크의 이러한 실현은 인터넷 및 패킷 교환형 네트워크에 의해 통상적으로 사용되는 단순한 중복 라우팅을 제공하지 않는다는 것이 중요하며, 즉 동일한 데이터는 임의의 하나의 경로 또는 심지어 다중 경로 상에서 동시에 송신될 수 있다. 다중 채널을 통해 일관적인 데이터 패킷을 중복하여 전송 또는 통신하는 것은 실제로 해킹의 위험성을 증가시키는데, 그 이유는 이것이 사이버 해적이 동일한 데이터의 다중 소스를 스니핑, 분석, 및 균열하는 것을 허용하기 때문이다.
그 대신에, SDNP 통신에 있어서, 정보는 예를 들어 루트(1113C, 1113E)를 가로질러 초기에 송신된 데이터가 없는 루트(1113A, 1113B, 1113D)를 가로질러 송신되는 데이터의 동일한 부분으로 단편화되고, 그 후 나중에 분할된 데이터로 단편화되고, 상이하게 조합되어, 루트(1113B, 1113D)를 가로질러 송신되는 데이터가 없는 루트(1113A, 1113C, 1113E)를 가로질러 송신된다. 다중 루트 전송(1112)의 예는 통신 노드(N0,0, Nf,f) 사이에 다중 데이터 경로를 설정하도록 배치된 통신 서버의 어레이(1118)를 포함하는 네트워크에 의해 도 68c에 도시되어 있다. 도시된 바와 같이, 다중 경로 전송은 네트워크 1 내지 4를 나타내는 상호 연결된 4 세트의 서버에서 발생한다. 하나의 데이터 경로인 루트(1113A)는 통신 노드(N1,1, N1,2, N1,3, N1,4)를 포함한다. 병렬 데이터 경로, 루트(1113B)는 통신 노드(N2,1, N2,2, N2,3, N2,4)를 포함한다. 마찬가지로, 병렬 데이터 루트(1113C)는 상호 연결된 통신 노드(N3,1, N3,2, N3,3, N3,4)를 포함하고, 루트(1113D)는 상호 연결된 통신 노드(N4,1, N4,2, N4,3, N4,4)를 포함한다.
도 68d에도 도시되어 있는 "메시형 루트" 전송(1114)에 있어서, 통신은 루트(1113A-113D) 사이에 교차-연결(1115A-1115E)을 포함할 뿐만 아니라 전술한 경로(1113A, 1113B, 1113C, 1113D, 1113E)를 포함하는 다중 상호 작용하는 루트를 따라 송신된다. 함께 상기 연결은 "메시"를 형성하며, 이에 따라 데이터 패킷은 모든 루트의 임의의 조합에 의해 이동할 수 있으며, 또한 심지어 다른 루트에 의해 송신되는 데이터 패킷과 동적으로 혼합되거나 재조합될 수 있다. 메시형 전송(1114)에 있어서, 네트워크는 통신하는 통신 노드(N0,0, Nf,f) 사이에 메시형 데이터 경로를 설정하도록 배치된 통신 서버(1118)의 어레이를 포함한다. 도시된 바와 같이, 다중 경로 전송은 수평으로 그리고 수직으로 배향된 데이터 경로와의 상호 연결된 서버 상에서 발생한다. 수평으로 배향된 루트(1113A)는 통신 노드(N1,1, N1,2, N1,3, N1,4)를 포함하고, 루트(1113B)는 통신 노드(N2,1, N2,2, N2,3, N2,4)를 포함하며, 루트(1113C)는 상호 연결된 통신 노드(N3,1, N3,2, N3,3, N3,4)를 포함하고, 루트(1113D)는 상호 연결된 통신 노드(N4,1, N4,2, N4,3, N4,4)를 포함한다. 수직으로 배향된 루트(1115A)는 통신 노드(N1,1, N2,1, N3,1, N4,1)를 포함하고, 루트(1115B)는 통신 노드(N1,2, N2,2, N2,3, N4,2)를 포함하며, 루트(1115D)는 상호 연결된 통신 노드(N1, N2, N3, N4,3)를 포함한다. 도 68e에 도시된 바와 같이, 네트워크는 대각선 상호 연결(1119)에 의해 추가로 보강될 수 있다.
다중 루트 전송은 스크램블링 및 암호화와 다양한 방법으로 조합될 수 있다. 스크램블링이 없는 다중 루트 전송의 예가 도 69에 도시되어 있으며, 여기서 통신 서버의 네트워크(1118)는 시간(t0)에서 통신 노드(N0,0)로부터 시간(tf)에서 통신 노드(Nf,f)로 데이터 패킷(1055)을 전송한다. 전송(1112)에 있어서, 통신 노드(N0,0)는 데이터 루트(1125A) 상에서 데이터 루트(1113A)로 데이터 세그먼트(1C, 1E)를 송신하고, 데이터 루트(1113B) 상에서 데이터 패킷(1125B)으로 데이터 세그먼트(1B)를 송신하며, 데이터 루트(1113C) 상에서 데이터 패킷(1125C)으로 데이터 세그먼트(1B)를 송신하고, 및 데이터 루트(1113D) 상에서 데이터 패킷(1125D)으로 데이터 세그먼트(1A, 1F)를 송신한다. 서브패킷은 데이터 및 관련 없는 서브패킷 또는 정크 데이터의 혼합을 포함할 수 있다. 서브패킷이 스크램블되지 않기 때문에, 데이터 패킷(1125A)의 데이터 세그먼트(1C, 1E)의 시컨스는, 다른 데이터 세그먼트가 이들 사이에 또는 그 전이나 후에 삽입될 수 있을지라도, 순차적인 순서로 유지된다. 마지막으로, 통신 노드(Nf,f)에 있어서, 혼합 동작(1089)은 시간(tf)에서 본래의 데이터 패킷을 재구성한다. 시간(t0)과 시간(tf) 사이의 모든 시간(tn)에서, 데이터 패킷(1125A 내지 1125D)의 콘텐트는 일정하게 유지된다.
스크램블링이 없는 전술한 멀티 루트 전송의 간단한 변형예가 정적 스크램블링을 갖는 멀티 루트 전송을 포함하는 도 70에 도시되어 있으며, 이는 들어오는 데이터 패킷(1055)이 분할되어 네트워크의 다중 경로를 통해 전달되기 전에 스크램블된다는 것을 의미한다. 특히, 통신 노드(N0,0)는 도 69에 도시된 분할 동작(1106)을 수행하는 대신에 스크램블링 및 분할 동작(1071)을 수행한다. 이전의 예에서와 같이 결과적인 스크램블된 혼합 데이터 패킷(1126A 내지 1126D)은 정적이며 또한 모든 시간(tn)에서 변하지 않은 상태로 존재하는 시간 불변형인 반면에, 이들은 본래의 데이터 패킷(1055)을 복원하기 위해 언스크램블링 및 혼합 동작(1070)을 사용하여 함께 다시 병합되고 언스크램블되는 최종 통신 노드(Nf,f)에 도달할 때까지 각각 경로(1113A 내지 1113D)에 따라 네트워크를 독립적으로 횡단한다. 도 69의 이전의 예에 비해, 도 70의 데이터 패킷(1126A-1126D)에서의 유일한 주된 차이는 패킷이 스크램블된다는 것이며, 즉 이들이 포함하는 데이터 세그먼트는 본래의 순차적인 순서가 아니다. 예를 들어, 데이터 패킷(1126A)에 있어서, 데이터 세그먼트(1E)는 1B 전에 발생하고, 데이터 패킷(1126D)에서 데이터 세그먼트(1D)는 1A 전에 발생한다. 정적 패킷 통신의 단점은 간단한 패킷 스니핑을 받지는 않으며, 이는 사이버 해적이 변하지 않는 데이터를 분석할 수 있게 한다는 점이다. 그럼에도 불구하고, 임의의 하나의 루트를 따라 이동하는 임의의 하나의 데이터 패킷에 존재하는 데이터가 불완전하고, 단편화되고, 스크램블되고, 및 다른 관련 없는 데이터 소스 및 대화와 혼합되기 때문에, 여전히 인터넷을 통한 OTT 통신보다 상당히 우수하다.
정적 스크램블링에 대한 개선은 도 71a에 도시된 동적 스크램블링을 사용하는 것이며, 여기서 반복적인 패킷 스크램블링, 즉 US 재스크램블링 동작(1017)은 데이터 패킷이 네트워크를 횡단함에 따라 데이터 패킷의 데이터 세그먼트 순서를 변경하고, 이는 데이터 주어진 루트를 횡단하는 임의의 데이터 패킷의 비교가 시간이 지남에 따라 변한다는 것을 의미한다. 예를 들어, 루트(1113A)를 횡단하는 데이터 패킷에 관해, 통신 노드(N1,3)에서 US 재스크램블링 동작(1017)을 겪은 직후의 시간(t3)의 데이터 패킷(1126A)에서, 데이터 세그먼트(1E)는 제2 시간 슬롯에 위치되며, 또한 제4 시간 슬롯에 위치된 데이터 세그먼트(1B)를 선행한다. 통신 노드(N1,4)가 US 재스크램블링 동작(1017)을 수행한 후 시간(t4)에서, 데이터 패킷(1127A)은 시간 슬롯 3 및 4에 연속적으로 위치된 1E 전에 위치된 데이터 세그먼트(1B)와 함께 변경된다. 데이터 패킷(1126D 내지 1127D)을 비교하면, 데이터 세그먼트(1D, 1A)의 위치는 변경되지만, 그러나 순서는 변하지 않는다. 이 방법은 지정 소스 또는 대화의 데이터가 아니라 데이터 패킷의 모든 데이터 세그먼트를 동적으로 스크램블하는 기술을 사용한다. 언스크램블된 직후 및 스크램블되기 직전에, 예를 들어 정크 데이터를 삽입하거나 삭제함으로써 패킷의 길이를 변화시키는 것이 가능하다. 그러나 도시된 예에 있어서, 패킷 길이는 고정된 상태로 존재하며, 단지 그 시컨스만 변경된다.
도시된 바와 같이, 제1 통신 노드(N0,0)는 스크램블 및 분리 동작(1071)을 수행하고, 마지막 통신 노드(Nf,f)는 혼합 및 언스크램블 동작(1070)을 수행하며, 모든 인터리빙 통신 노드는 US 재스크램블 동작(1017)을 수행한다. 각각의 경우에 있어서, 언스크램블링 동작은 들어오는 패킷의 시간 또는 상태에 의존하며, 스크램블링 동작은 나가는 데이터 패킷의 시간 또는 상태를 이용한다. 병렬 다중 루트 전송에 있어서, 분할은 통신 노드(N0,0)에서 오직 한 번만 발생하고, 혼합은 통신 노드(Nf,f)에서 전송의 끝에 오직 한 번만 발생한다. 방법론적으로, 이 시컨스는 "스크램블 후 분할"로 분류될 수 있다. 여기에서 순차 또는 선형 스크램블링으로 알려진, 도 71a에 도시된 바와 같은 동적 스크램블링의 실시예에 있어서, 이전의 동작은 이들이 포함하는 역순서로 취소되어야만 하여, 이에 따라 데이터 패킷에서 각각의 데이터 세그먼트 위치의 재정렬은 콘텐츠가 무엇인지 또는 어디서 왔는지의 여부와는 상관 없이 알고리즘으로 발생한다. 이러한 방식으로, 분할 후의 제1 통신 노드, 즉 통신 노드(N1,1, N2,1, N3,1, N4,1) 모두는 동일한 언스크램블링 동작을 수행하여 스크램블 후 분할 동작(1071)의 본래 스크램블링의 영향을 취소하여, 데이터를 포함하는 각각의 데이터 세그먼트를 다시 이를 스크램블링하기 전에 그 본래의 위치로 복귀시킨다. 분할 프로세스에서, 패킷의 위치는 정크 데이터로 채워진 사용되지 않은 슬롯에 본래 위치되었던 동일한 위치에 존재한다. 예를 들어, 데이터 세그먼트(1B)가 스크램블 및 분할 동작(1118)에 의해 패킷에서 제5 위치로 이동되었다면, 분할 후 데이터 세그먼트(1B)를 포함하는 패킷은 이를 제5 위치에 유지할 것이다. 패킷의 언스크램블링은 다른 모든 슬롯이 정크 데이터로 채워지더라도 이것이 속하는 제2 슬롯으로 상기 데이터 세그먼트(1B)를 다시 이동시킬 것이다. 정크 데이터의 탈락은 정크 데이터 패킷이 제거될 것이기 때문에 상관 없다. 일단 지정 데이터 세그먼트의 위치가 언스크램블링 동작에 의해 그 본래의 슬롯으로 복원되었다면, 이는 다시 스크램블되어 이를 새로운 위치로 이동시킬 것이다. 데이터 영역을 그 본래의 위치로의 복원과 그 후 다시 새로운 위치로의 스크램블링의 조합은 "재스크램블링" 프로세스가 언스크램블링 후 스크램블링을 포함한다는 것을 의미하며, 따라 그 이름을 US 재스크램블링(1017)으로 한다.
도 71b에 도시된 이미 상세히 기재된 "선형 스크램블 후 분할" 방법의 간단한 기재는 여기에서는 "네스트된 스크램블 후 분할" 및 "선형 분할 후 스크램블"로 지칭되는 기재된 발명의 2개의 다른 대안적인 실시예로 구성된 도 71b에 도시되어 있다. 선형 스크램블 후 분할 방법에 있어서, 모든 데이터 패킷을 연속적으로 및 반복적으로 스크램블링 및 언스크램블하면 데이터 패킷의 보안을 리프레시한다. 따라서 스크램블 및 분할 동작(1071)에서 처음 수행 스크램블링은 각각의 데이터 경로에서 US 재스크램블링 동작(1017)에 의해 최소화되어야만 하며, 여기서 브래킷(bracket)은 US 재스크램블링 동작(1017)에서의 언스크램블링이 실행될 수 있도록 모든 통신 루트에서 제1 통신 노드를 통과한 스크램블 및 분할 동작(1071)에서 사전 분할 스크램블링 동작을 선택 및 수행하는 데 사용된 시간, 상태 또는 수치 시드를 의미하는 다중 병렬 경로 또는 루트를 기호로 나타낸다. 그 후, 각 루트는 그 루트를 횡단하는 데이터 패킷을 개별적으로 스크램블 및 언스크램블하며, 여기서 US 재스크램블링 동작(1017)은 마지막 스크램블링을 실행하는 데 사용된 시간, 상태 또는 수치 시드를 항상 사용하고, 그 후 새로운 스크램블링을 실행하기 위해 현재 시간 또는 상태를 사용한다. 마지막 단계인 혼합 및 언스크램블 동작(1070)에서, 스크램블된 구성요소는 스크램블된 형태로 재조립되며, 그 후 본래의 데이터를 복구하기 위해 이들이 마지막으로 스크램블되었던 상태 또는 시간을 사용하여 본래의 최종적으로 언스크램블된다.
도 71b에도 도시된 "네스트된 스크램블 및 분할" 예에 있어서, 스크램블 후 분리 동작(1071)은 초기 시간 또는 상태에서 데이터 패킷을 먼저 스크램블링하고 그 후 상기 데이터를 다중 루트 내로 분할하며, 각각의 데이터 경로는 제1 스크램블링 동작을 결코 최소하지 않고 상기 제1 스크램블링과 관련 없는 제2 스크램블링 동작을 수행한다. 스크램블링 동작이 이미 스크램블된 데이터 패킷 상에 수행되기 때문에, 상기 스크램블링은 "네스트된" 것으로서 간주될 수 있으며, 즉 다른 것의 내측에 하나의 스크램블링으로 간주될 수 있다. 네스트된 개체 또는 소프트웨어 코드를 토착 프로그래밍에 있어서, 스크램블링 및 분할 동작(1071)에 의해 수행되는 바와 같은 제1 스크램블링은 "외부" 스크램블링 루프를 포함하고, 제2 및 모든 연속한 스크램블링 US 재스크램블링 동작(1017)은 내부 스크램블링 루프를 나타낸다. 이는 네트워크를 횡단하는 데이터는 본래 데이터를 복구하기 위해 2번 스크램블되고, 언스크램블되어야만 한다는 것을 의미한다. 내부 스크램블링 루프의 최종 단계는 패킷 분할이 먼저 발생된 직후와 동일한 조건, 즉 동일한 데이터 세그먼트 순차적으로 각각의 루트의 데이터 패킷을 복권하는 언스크램블링 동작(928)을 포함한다. 그 후, 데이터 패킷은 단일의 데이터 패킷으로 재조립되고 그리고 혼합 및 언스크램블 동작(1070)을 사용하여 언스크램블된다.
네스트된 동작의 동일한 개념은 도 71c에 도시된 바와 같이 네스트된 분할 및 혼합 동작을 수행하는 데 사용될 수 있다. 클라이언트의 SDNP 애플리케이션(1335) 내에서, 비디오, 텍스트, 음성 및 데이터 파일을 포함하는 다양한 데이터 소스가 혼합, 직렬화, 정크 데이터 내로의 삽입, 스크램블, 그 후 MSE 동작(1075)에 의해 암호화될 수 있다. 키(1030W) 및 시드(929W)를 포함하는 보안 자격은, 콘텐트를 운반하는 미디어 노드를 사용하지 않고, 송신 클라이언트 휴대폰(32)으로부터 수신 클라이언트 태블릿(33)으로 직접 교환될 수 있다. 예를 들어, 이 정보는 별도의 "시그널링 서버" 네트워크(나중에 설명됨)를 사용하여 수신자에게 송신될 수 있는데, 그 이유는 시드 및 키가 외부인에게 유용한 정보를 포함하지 않기 때문이며, 이러한 정보는 심지어 인터넷을 통해 수신 클라이언트에게 전달될 수도 있다. 클라이언트의 디바이스 또는 애플리케이션에서 발생하는 이 제1 동작은 SDNP 네트워크와는 독립적인 클라이언트 보안을 실현하는 데 사용되는 외부 루프의 시작을 나타낸다.
일단 혼합, 정크, 스크램블 및 암호화되었다면, 판독 불가능한 클라이언트 암호문(1080W)은 SDNP 게이트웨이 서버(N0,0)로 다음에 송신되고, 여기서 이는 SDNP 클라우드를 통한 전송 준비 시 상이한 알고리즘, 상태 및 시드(929U) 및 키(1030U)와 같은 네트워크 지정 보안 자격을 갖는 상이한 공유 비밀을 사용하여 다시 한 번 처리된다. 이 내부 루프는 클라우드 서버 보안을 촉진시키며, 또한 클라이언트 보안 루프와는 완전히 독립적이다. 들어오는 데이터 패킷에 대한 게이트웨이 SSE 동작(1140)의 일부로서, 데이터 패킷은 두 번째로 스크램블되고, 상이한 서브패킷으로 분할되며, 또한 다중 루트 또는 메시형 전송을 위한 암호문(1080U, 1080V)으로 암호화될 수 있다.
결국, 다중 서브패킷은 초기 게이트웨이의 분할 동작의 효과를 취소하기 위해, 이들이 DMU 동작(1141)에 의해 처리되는 목적지 게이트웨이(Nf,f)에 도착하며, 즉 DMU 동작(1141)은 내부 보안 루프의 기능을 완료하는 SSE 동작(1140)의 효과를 취소한다. 따라서 게이트웨이(Nf,f)는 들어오는 게이트웨이(N0,0)에 의해 실행된 모든 네트워크 관련 보안 조치를 취소하고, 본래 파일, 이 경우 클라이언트 암호문(1080W)을 SDNP 클라우드에 들어갈 때와 동일한 조건으로 복원한다.
그러나 이 데이터 패킷이 이미 혼합되어, 스크램블되고, 암호화되었기 때문에, SDNP 게이트웨이를 나가고 또한 수신 클라이언트에 송신되는 암호문(1080W)을 포함하는 데이터 패킷은 여전히 수신 클라이언트의 애플리케이션(1335)을 제외한 임의의 사람이 해석할 수 없도록 암호화된다. 그 후 한 번 클라이언트에 전달된 복원된 암호문은 이것이 시간(t0)에서 생성되었을 때 송신 클라이언트의 상태(990)에 따라 DUS 동작(1076)에 의해 해독 및 언스크램블되고, 비디오, 텍스트, 음성 및 데이터 파일을 포함하는 다양한 데이터 소스의 소스를 복구하도록 최종적으로 분할되어, 외부 보안 루프를 완성한다.
따라서 SDNP 네트워크 운영자로서 제기하는 사이버 범죄자가 네트워크의 "내부"로부터 SDNP 보안을 무너뜨리려는 시도하는 네트워크 감시를 좌절시키기 위해, 외부 보안 자격, 즉 공유 비밀, 시드, 키, 보안 영역 등은 내부 보안 루프의 그것과는 다르게 의도적으로 제조된다.
도 71b에도 도시된 본 발명의 다른 실시예에 있어서, "선형 분할 후 스크램블"의 프로세스에서, 데이터가 먼저 분리되고, 그 후 각각의 데이터 루트 상에서 개별적으로 스크램블된다. 데이터 분할 동작(1057)은 경로 별로 기초로 실현되고 실행되는 독립적인 스크램블링 동작(926)이 뒤따른다. 일단 스크램블되었다면, 각 루트를 횡단하는 데이터 패킷은 US 재스크램블링 동작(1017)에 의해 연속적으로 재스크램블되며, 여기서 들어오는 패킷은 이를 생성하기 위해 스크램블링 동작(926)에 의해 사용된 바와 동일한 시간, 상태 또는 수치 시드를 사용하여 언스크램블된다. 그 후, 각 루트는 그 경로를 횡단하는 데이터 패킷을 개별적으로 스크램블링하고 언스크램블하며, 여기서 US 재스크램블링 동작(1017)은 항상 마지막 스크램블링을 실행하는 데 사용된 시간, 상태 또는 수치 시드를 사용하고, 그 후 새로운 스크램블링을 실행하기 위해 그 현재 시간 또는 상태를 사용한다. 마지막 단계는 언스크램블링 동작(928)을 포함하고, 각 루트의 데이터를 동일한 상태로, 즉 패킷 분할이 처음 발생한 직후와 동일한 데이터 세그먼트 순차적으로 복원한다. 그 후, 데이터 패킷은 혼합 동작(1061)을 사용하여 단일의 언스크램블된 데이터 패킷으로 재조합된다.
사용된 혼합 및 스크램블링의 시컨스와는 관계없이, 처리된 데이터 패킷은 추가적인 보안 수준을 촉진시키기 위해 정적 또는 동적 암호화를 받을 수 있다. 이 조합의 일 예가 도 72에 도시되어 있으며, 이는 이하의 단계를 포함하는 "정적 스크램블링 후 분할 및 동적 암호화"로 기재된 방법을 포함한다:
1. 시간(t0)에서 입력 언스크램블된 평문으로 시작
2. 시간(t1)에서 정적 패킷 스크램블링(926)을 사용하여 언스크램블된 평문(1055)을 스크램블한다
3. 시간(t2)에서 분할 동작(1106)을 사용하여 스크램블된 평문(1130)을 다중 분할 데이터 패킷(1131A, 1133A) 등으로 분할한다
4. 시간(t3)에서 유사하지 않은 다중 서로 다른 비 중첩 병렬 루트 상으로 분할 데이터 패킷(1131A, 1133A 및 1131A) 등을 재지향(도 72에는 이들 병렬 루트 중 단지 2개만 상세히 도시됨)
5. 상태(994)에 대응하는 암호화 키 및 수치 시드를 포함하는 암호화(1026)를 사용하여 시간(t4)에서 각각의 데이터 패킷(1131A, 1133A) 등을 독립적으로 암호화하여, 암호문(1132A, 1134A) 등으로 나타남.
6. 암호화되지 않은 평문(1131B, 1133B) 등으로 나타나는 해독(1032)을 사용하여 공유 비밀, 키, 수치 시드 등을 포함하는 상태(994) 정보로 각각의 데이터 패킷(1132A, 1134A)을 독립적으로 해독.
7. 암호문(1132B, 1134B) 등으로 나타나는 상태(996)에 대응하는 암호화 키 및 수치 시드를 사용하여 시간(t6)에서 암호화(1026)를 사용하여 암호화되지 않은 평문(1131B, 1133B) 등을 독립적으로 재암호화.
8. 암호화되지 않은 평문(1131C, 1133C) 등으로 나타나는 해독(1032)을 사용하여 공유 비밀, 키, 수치 시드 등을 포함하는 상태(996) 정보를 포함하는 각각의 데이터 패킷(1132B, 1134B) 등을 독립적으로 해독.
9. 스크램블된 평문(1130)을 생성하기 위해, 혼합 동작(1089)을 사용하여 시간(t7)에서 암호화되지 않은 평문(1131C, 1133C) 등을 혼합.
10. 스크램블링이 처음 발생하여 본래의 언스크램블된 평문(1055)을 복구할 때, 시간(t1)에 대응하는 상태(991)를 사용하여 시간(t8)에서 스크램블된 평문(1130)을 언스크램블링.
도시된 예에 있어서, 초기 데이터 패킷 처리는 동작(1140)으로서 도시된 스크램블링, 분할 및 암호화의 순차적인 애플리케이션을 포함한다. 최종 동작은 동작(1141)에 의해 도시된 해독, 혼합 및 언스크램블링을 포함한다. 모든 중간 단계는 재암호화를 포함하며, 그 자체는 해독과 암호화를 모두 포함한다.
다중 루트 전송에서 이 방법을 사용하는 일례가 도 73에 도시되어 있으며, 여기서 통신 노드(N0,0)는 스크램블링, 분할, 암호화 동작(1140A)을 수행하고, 통신 노드(Nf,f)는 해독, 혼합 및 언스크램블링 동작(1141A)을 수행하는 반면에, 모든 중간 노드는 재암호화 동작(107)을 수행한다. 본 발명에 따른 다중 루트 전송에 있어서, 정적 및 동적 스크램블링 및 정적 및 동적 암호화의 다양한 조합이 가능하다.
스크램블, 분리 및 암호화에 대한 옵션으로서, 본 발명의 다른 실시예에 있어서, 데이터 패킷은 분할되고, 그 후 도 74에 도시된 분할, 스크램블, 암호화 동작(1140B)을 사용하여 스크램블되고 암호화될 수 있다. 이 방법에서, 들어오는 데이터 패킷이 먼저 동작(1106)에서 분할된다. 결과적으로 각각의 루트의 데이터 패킷은 동작(926)에서 독립적으로 스크램블되고, 동작(1026)에서 암호화된다. 결과적인 데이터 패킷은 그 후 독립적으로 반복적으로 해독되고, 그 후 재암호화 동작(1077)을 사용하여 재암호화될 수 있으며, 또는 DUSE 재패킷 동작(1045)을 사용하여 해독, 언스크램블, 재스크램블, 및 재암호화될 수 있다.
아래에 기재되는 메시형 라우팅과 달리, 도 69 내지 도 73에 예시된 다중 루트 전송에 있어서, 네트워크를 횡단하는 각 데이터 패킷은 주어진 통신 노드에 의해 한 번만 처리되며, 통신 노드는 관련성 있는 데이터 또는 공통 대화를 운반하는 2개 이상의 데이터 패킷을 처리하지 않으며, 즉 데이터 루트(1113A, 1113B, 1113C, 1113D)는 별개이고, 구별되며, 중첩되지 않는다.
메시형 라우팅 - 도 68a로 다시 돌아가서, 여기에 기재된 메시형 패킷 라우팅 및 전송은 상이한 경로에서 네트워크를 횡단하는 데이터 패킷이 동일한 서버 내에서 경로를 교차할 수 있다는 점을 제외하면, 병렬 다중 루트 전송과 유사하다. 여기에 기재된 바와 같은 정적 메시형 라우팅에서, 이들 데이터 패킷은 다른 대화 또는 통신 데이터가 존재하지 않는 것처럼, 상호작용 없이 공통 서버를 통과한다. 그러나 동적 메시형 라우팅에서, 통신 노드에 들어감에 따라, 데이터 패킷은 동일한 서버에 동시에 존재하는 다른 데이터 패킷과 상호 작용할 수 있다.
이전에 기재된 분할 및 혼합 방법을 사용하여, 데이터 세그먼트 그룹은 하나의 데이터 패킷으로부터 분리되거나 제거될 수 있고, 다른 데이터 패킷과 결합되거나 병합될 수 있으며, 그 괘도 상에서 이것이 나오는 곳으로부터의 하나와는 상이한 목적지로 송신될 수 있다. 본 발명에 따른 메시형 라우팅은 가변 길이 또는 고정 길이 데이터 패킷을 이용할 수 있다. 가변-길이 패킷에서, 데이터 패킷을 포함하는 데이터 세그먼트의 수는 주어진 통신 노드를 횡단하는 트래픽의 양에 기초하여 변할 수 있다. 고정 길이 메시형 전송에서, 전체 데이터 패킷을 구성하는 데 사용되는 데이터 세그먼트의 수는 일부 일정한 정수로 고정되거나 또는 대안적으로 양자화된 정수 증분으로 조정된 일부 데이터 세그먼트 수로 조정된다.
가변 길이 데이터 패킷과 고정 길이 데이터 패킷의 사용 사이의 주된 차이점은, 패킷 필러와 같은 정크 데이터의 사용에 있다. 가변 길이 데이터 패킷에서 정크 데이터의 사용은 주로 선택적으로, 주로보안 고려 사항을 기반으로 하고 있거나, 또는 네트워크 전파 지연을 모니터링하기 위해 사용되지 않는 경로를 사용한다. 고정 길이 데이터 패킷에서 정크 데이터의 사용은 필수적인데, 그 이유는 적절한 수의 데이터 세그먼트가 통신 노드를 벗어나는 패킷을 채우는 데 사용할 수 있는 방법이 없기 때문이다. 따라서 정크 데이터는 서버를 나가는 각 데이터 패킷이 네트워크를 가로질러 앞으로 송신되기 전에 지정한 길이로 채워지는 것을 보장하도록 패킷 필러로서 지속적으로 그리고 연속적으로 사용된다.
통신 네트워크(1112)를 가로지르는 정적 메시 데이터 전송의 예가 도 75에 도시되어 있으며, 여기서 데이터 패킷(1055)은 시간(t0)에서 통신 노드(N0,0)에 의해 가변 길이의 4개의 패킷, 특히 데이터 세그먼트(1F)를 포함하는 데이터 패킷(1128B), 데이터 세그먼트(1C)를 포함하는 데이터 패킷(1128B), 데이터 세그먼트(1A, 1D)를 포함하는 데이터 패킷(1128C), 및 데이터 세그먼트(1B 및 1E)를 포함하는 데이터 패킷(1128D)으로 분할된다. 도시된 데이터 세그먼트는 가변 길이의 다른 데이터 패킷 및 대화로부터의 다른 데이터 세그먼트와 조합될 수 있다. 명확함을 위해 다른 대화로부터의 데이터 세그먼트가 의도적으로 도면에서 제외되었다.
정적 전송 중, 데이터 패킷의 콘텐트, 즉 이것이 포함하는 데이터 세그먼트는 네트워크를 횡단할 때 변경되지 않고 존재한다. 예를 들어, 데이터 세그먼트(1F)를 포함하는 데이터 패킷(1128A)은, 시간(tf)에서 데이터 패킷(1055)을 재생성하기 위해 최종 통신 노드(Nf,f)에서 패킷(1128B, 1128C 및 1128D)과 최종적으로 재조립되기 전에, 먼저 통신 노드(N0,0)로부터 통신 노드(N1,1)로 시컨스로, 그 후 통신 노드(N2,1, N3,2, N3,3, N4,4)로 순차적으로 통신 노드를 횡단한다. 유사한 형태로, 데이터 세그먼트(1A, 1D)를 포함하는 데이터 패킷(1128C)은, 시간(tf)에서 최종 통신 노드(Nf,f)에서 패킷(1128A, 1128B 및 1128D)과 최종적으로 재조립되기 전에, 먼저 통신 노드(N0,0)로부터 통신 노드(N3,1)로 시컨스로, 그 후 통신 노드(N2,3) 및 통신 노드(N1,4)로 통신 노드를 횡단한다. 정적 메시형 전송 중, 다중 데이터 패킷은 혼합 또는 상호 작용 없이 공통 서버를 통과한다. 예를 들어, 서로 간섭 없이, 콘텐트 교환 없이, 또는 데이터 세그먼트 스와핑 없이, 데이터 패킷(1128A, 1128B)은 모두 통신 노드(N2,1)를 통과하고, 데이터 패킷(1128B, 1128C)은 모두 통신 노드(N2,3)를 통과하며, 데이터 패킷(1128A, 1128D)은 모두 통신 노드(N3,3)를 통과할 수 있다.
데이터 경로가 상이한 길이를 가질 수 있고 또한 상이한 전파 지연을 나타낼 수 있기 때문에, 일부 데이터 패킷은 다른 통신 노드보다 최종 통신 노드(Nf,f)에 도달할 수 있다. 이러한 경우에, 본 발명에 따르면, 데이터 패킷은 다른 관련 데이터 패킷이 도달할 때까지, 통신 노드(Nf,f)에 일시적으로 유지되어야만 한다. 또한 도면은 본래의 데이터 패킷(1055)의 최종 조립 및 복구가 통신 노드(Nf,f)에서 발생하고 있음을 도시하고 있지만, 실제로 최종 패킷 재조립, 즉 혼합은 데스크탑, 노트북, 휴대폰, 태블릿, 셋톱박스, 자동차, 냉장고 또는 네트워크에 연결된 다른 하드웨어 디바이스와 같은 디바이스에서 발생할 수 있다. 환언하면, 메시형 전송과 관련하여, 통신 노드와 통신 노드에 연결된 디바이스 사이에는 구별이 없으며, 즉 통신 노드(Nf,f)는 진정한 대용량 서버 대신에 데스크탑 컴퓨터로 간주될 수 있다. 기재된 SDNP 클라우드, 즉 라스트 마일 연결에 대한 디바이스의 연결은 이 애플리케이션의 후반부에서 보다 상세히 논의된다.
전술한 정적 라우팅은 스크램블링, 암호화 또는 그 조합을 포함하여 기재된 바와 같이 전술한 임의의 SDNP 방법과 병합될 수 있다. 예를 들어, 도 76에서, 가변 길이 정적 메시형 라우팅은 정적 스크램블과 조합된다. 도시된 바와 같이, 시간(t1)에서 언스크램블된 데이터 패킷(1055)은 스크램블된 평문 데이터 패킷(1130)으로 변환되고, 그 후 이는 통신 노드(N0,0)에 의해 분할되며, 그 후 정크 데이터와 혼합된 분할 패킷이 네트워크(1112)를 통해 전송된다. 라우팅은, 데이터 세그먼트가 의도적으로 무질서하여 라우팅 전에 정크 데이터 세그먼트와 혼합된다는 점을 제외하고는, 이전의 예와 유사하다. 예를 들어, 개재된 정크 패킷에 의해 분리된 데이터 세그먼트(1D, 1A)를 포함하는 데이터 패킷(1132C)은 시간(tf)에서 데이터 패킷(1055)을 재생성하기 위해, 최종 통신 노드(Nf,f)의 패킷(1128A, 1128B 및 1128D)과 최종적으로 재조립되기 전에, 먼저 통신 노드(N0,0)로부터 통신 노드(N3,1)로, 그 후 통신 노드(N2,3, N3,2, N1,4)로 순차적으로 통신 노드를 횡단한다. 유사한 형태로, 역 순서로 데이터 패킷(1E, 1B)을 포함하는 데이터 패킷(1132D)은, 시간(tf)에서 최종 통신 노드(Nf,f)의 패킷(1128A, 1128B, 1128C)과 재조립되기 전에, 먼저 통신 노드(N0,0)로부터 통신 노드(N4,1)로, 그 후 통신 노드(N4,2, N3,3, N2,4)로 순차적으로 통신 노드를 횡단한다. 이 마지막 노드에서, 혼합하는 동안, 본래의 스크램블된 데이터(1130)를 생성하기 위해 정크 데이터를 제거하는 디정크 동작이 수행된다. 언스크램블링 후, 본래의 데이터(1055)는 복구된다.
여기에 기재된 본 발명에 따라 동적 메시형 전송을 실행하기 위해, 패킷은 처리하여 패킷을 처리하는 각각의 통신 노드 내에서 그 내용 및 방향을 변경하도록 처리되어야만 한다. 이 프로세스는 들어오는 데이터 패킷을 단일의 긴 데이터 패킷으로 병합하는 단계와, 또는 대안적으로 상기 긴 데이터 패킷이 생성된 것처럼 동일한 서브패킷을 포함하는 데이터 버퍼를 사용하는 단계와, 그 후 이들 패킷을 상이한 조합으로 분할하는 단계와, 및 이들 패킷을 상이한 목적지로 송신하는 단계를 포함한다. 상기 프로세스는 이미 기재된 바와 같이 가변 또는 고정 길이 패킷을 사용할 수 있다. 도 77a는 대응하는 가변 길이 데이터 패킷(1128B, 1128D, 1128F, 1128H)을 혼합 동작(1089)을 수행하는 통신 노드(Na,j)에 각각 송신하고, 상기 패킷을 짧은 또는 긴 패킷(1055) 내로 조합하는 모든 네트워크 "A"에 통신 노드(Na,b, Na,d, Na,f, Na,h)를 포함하는 SDNP 통신 네트워크의 요소를 도시하고 있다. 그 후 패킷(1055)은 새로운 데이터 가변 길이 데이터 패킷(1135N)을 생성하기 위해 통신 노드(Na,j)에서 분할 동작(1106)을 사용하여 분할되고, 그 후 통신 노드(Na,n, Na,q, Na,s)로 송신된다. 데이터 또는 정크 데이터(1135V)는 통신 노드(Na,v)에 전송되지 않는다. 각각의 경우에, 들어오는 패킷의 길이는 가변적이며, 상기 패킷은 정크 데이터 또는 도시되지 않은 다른 통신, 대화 또는 코뮤니케로부터의 데이터를 포함할 수 있다. 도시된 바와 같이, 혼합 동작(1089)과 분할 동작(1106)의 조합은 데이터 혼합 및 분할 동작(1148)을 이용하여 동적 메시형 라우팅을 촉진시키기 위해 통신 노드(Na,j)에 의해 수행된다. 아래에 설명되는 방식에 있어서, 새로이 분할된 패킷(1135N, 1135Q, 1135S, 1135V)(후자는 정크 데이터를 포함하는 것으로 가정함) 및 그 라우팅은 통신 노드(Na,j)에 송신된 동적 명령에 의해 또는 SDNP 네트워크에 의해 또는 이런 들어오는 명령 및 제어 신호가 없는 경우 사전 정의된 알고리즘 또는 명령 세트를 사용함으로써 결정된다.
들어오는 패킷을 처리하기 위해, 즉 이들을 혼합하고 그 후 이들을 다른 조합의 새로운 패킷으로 분할하기 위해, 노드(Na,j)는 데이터가 도착하기 전에, 처리될 데이터 패킷을 어떻게 식별할 지 그리고 이들로 무엇을 할지를 노드에 알려주는 명령을 받아야만 한다. 이들 명령은 공유 비밀, 즉 사전 정의된 알고리즘으로서 국부적으로 저장된 고정 알고리즘을 포함할 수 있으며, 또는 시컨스는 미리 데이터의 노드로 송신되는, 이상적으로는 라우팅을 제어하는 다른 서버로부터 그러나 데이터를 운반하는 서버는 아닌, 명령 및 제어 "동적" 명령에서 배타적으로 정의될 수 있다. 들어오는 데이터에 대해 무엇을 해야 하는지에 대한 명령이 데이터 스트림 자체에, 즉 미디어 또는 콘텐트의 일부에 내장된다면, 라우팅은 여기에서는 "단일 채널" 통신으로서 지칭된다. 데이터 패킷 라우팅이 다른 서버에 의해 결정되고 미디어 서버에 통신된다면, 데이터 라우팅은 "이중 채널"(또는 가능하다면, 3중 채널) 통신으로서 지칭된다. 단일 및 이중/3중 채널 통신의 동작의 세부 사항은 본 출원의 후반부에 보다 자세히 설명된다.
명령이 어떻게 전달되는지의 여부와는 관계없이, 미디어 노드는 들어오는 지정 데이터 패킷에 속한 명령을 알기 위해 데이터 패킷을 인식해야만 한다. 이 식별 정보 또는 "태그"는 관심 있는 패킷을 식별하기 위해 우편 번호 또는 배달자 패키지 라우팅 바코드처럼 동작한다. 그러나 도 77a에 도시된 들어오는 데이터 패킷(1128B, 1128D, 1128F, 1128H)은 식별 태그가 아닌 패킷의 오디오 또는 텍스트 콘텐츠만을 나타낸다. 각각의 지정 데이터 패킷을 식별하고 또한 들어오는 데이터 패킷이 어떻게 혼합될지를 결정하기 위해 패킷 헤더 내에 존재하는 태그된 데이터를 사용하는 프로세스가 이미 도 67i에 기재되었다. 데이터 패킷 내에 포함된 태그 및 라우팅 정보의 지정 예는 본 출원의 후반부에서 추가로 논의된다. 노드(Na,j)가 어떤 데이터 패킷을 찾고 혼합 동작(1089) 및 분할 동작(1106)에 어떤 알고리즘을 사용할지를 알게 되었다면, 데이터가 처리될 수 있다.
동일한 동작의 고정 길이 데이터 패킷 등가물이 도 77b에 도시되어 있으며, 여기서 네트워크(A)에서의 통신 노드(Na,b, Na,d, Na,f, Na,h)는 통신 노드(Na,n, Na,q)에 각각 송신된 새로운 고정 길이 데이터 패킷(1151N, 1151Q, 1151S)을 생성하기 위해 혼합 및 분리 동작(1148)을 차례로 수행하는 통신 노드(Na,j)에 각각 대응하는 고정 길이 데이터 패킷(1150B, 1150B, 1150D, 1150F, 1150H)을 송신한다. 데이터 또는 정크 데이터(1151V)는 통신 노드(Na,v)에 송신되지 않는다. 각각의 경우에, 들어오는 패킷의 길이는 고정되어 있고 또한 고정된 길이의 데이터 패킷을 유지하기 위해, 즉 규정된 수의 데이터 세그먼트를 포함하는 도시되지 않은 코뮤니케의 다른 대화로부터 정크 데이터 필러 또는 데이터를 필수적으로 포함한다.
네트워크 계층 3 프로토콜에 기재된 바와 같은 서버의 상호 연결은 무수히 많은 연결을 포함하며, 각각의 통신 노드 출력은 다른 통신 노드의 입력에 연결된다. 예를 들어, 도 77c에 도시된 바와 같이, 혼합 및 분할 동작(1149B)을 수행하는 통신 노드(Na,b)의 출력은 통신 노드(Na,j, Na,q, Na,v, Na,f)의 입력에 연결된다. 혼합 및 분할 동작(1149Q)을 수행하는 통신 노드(Na,q)의 출력은 통신 노드(Na,b, Na,j, Na,f) 및 도시되지 않은 다른 통신 노드의 입력에 연결된다. 유사한 방식으로, 혼합 및 분할 동작(1149F)을 수행하는 통신 노드(Na,f)의 출력은 통신 노드(Na,q, Na,j, Na,v) 및 도시되지 않은 다른 통신 노드의 입력에 연결되고, 혼합 및 분할 동작(1149J)을 수행하는 통신 노드(Na,j)의 출력은 도시되지 않은 다른 통신 노드와 함께 통신 노드(Na,q, Na,v)의 입력에 연결되며, 혼합 및 분할 동작(1149V)을 수행하는 통신 노드(Na,v)의 출력은 통신 노드(Na,f)의 입력 및 도시되지 않은 다른 통신 노드에 연결된다.
출력-입력 연결이 단순한 PHY 계층 1 연결이나 회선이 아닌 네트워크 설명이기 때문에, 디바이스 사이의 이들 네트워크 연결은 계층 1 PHY 연결 및 전술한 네트워크 또는 클라우드로의 계층 2 데이터 링크를 갖는 임의의 디바이스를 위한 애드혹 상에 설정되거나 해제될 수 있다. 또한, 상기 연결은 고정된 영구적인 전기 회로가 아닌 가능한 네트워크 통신 경로를 나타내기 때문에, 통신 노드(Na,b)의 출력이 통신 노드(Na,q)의 입력에 연결되고 또한 통신 노드(Na,b)의 출력이 통신 노드(Na,b)의 입력에 연결된다는 사실은 전기 회로에서처럼 피드백 또는 레이스 조건을 생성하지 않는다.
실제로 네트워크에 전기적으로 연결된 모든 컴퓨터는 통신 노드로서 동적으로 또한 소프트웨어를 사용하여 애드혹 상에 추가되거나 제거될 수 있다. 컴퓨터를 네트워크에 연결하는 것은 통신 노드를 네임 서버 또는 네임 서버 기능을 수행하는 임의의 서버에 "등록"하는 것을 포함한다. 본 출원의 배경 부분에 기재된 바와 같이, 인터넷에서 네임 서버는 IPv4 또는 IPv6 포맷을 사용하여 인터넷 어드레스로서 그 전자 신원을 식별하는 컴퓨터의 네트워크이다. 최상위 인터넷 네임 서버는 전역 DNS 또는 도메인 네임 서버이다. 일부 컴퓨터는 실제 인터넷 어드레스를 사용하지 않지만, 그러나 대신에 NAT 또는 네트워크 어드레스 변환기에 의해 할당된 어드레스를 갖는다.
유사한 방식으로, 기재된 보안 동적 네트워크 및 프로토콜은 SDNP 네트워크의 모든 디바이스를 추적도록 네임 서버 기능을 이용한다. SDNP 통신 노드가 시작되거나 컴퓨터 언어에서 SDNP 노드의 소프트웨어가 부팅될 때마다, 다른 SDNP 노드가 온라인 상태이고 통신에 사용할 수 있음을 알 수 있도록, 새로운 디바이스가 네트워크 네임 서버에 동적으로 등록된다. 3중 채널 통신에서, SDNP 네임 서버는 명령 및 제어에 사용되는 서버, 즉 시그널링 서버로부터, 또한 실제 통신 콘텐트를 운반하는 미디어 서버로부터 분리되어 있다. 단일 채널 통신에서 한 세트의 서버는 네임 서버 동작과 제어 라우팅뿐만 아니라 콘텐트를 전송해야만 한다. 따라서 여기에 단일 채널, 이중 채널 및 3중 채널의 세 가지 타입으로 기재된 SDNP 시스템은 전송, 시그널링 및 네이밍(naming) 기능을 수행하는 데 사용되는 서버에 의해 구분된다. 단일 채널 시스템에 있어서, 통신 노드 서버는 모두 3가지 기능을 수행하며, 이중 채널 시스템에서 시그널링 및 네이밍 기능은 전송 기능과 분리되고 또한 시그널링 서버에 의해 수행되며, 3중 채널 시스템에서 네이밍 기능은 전송 및 신호 기능과 분리되고 또한 네임 서버에 의해 수행된다. 실제로, 주어진 SDNP 네트워크는 일치될 필요는 없지만, 단일 채널인 부분, 이중 채널인 부분, 및 3중 채널인 부분으로 세분될 수 있다.
온라인에서 오는 임의의 새로운 SDNP 통신 노드는 네임 서버에 그 SDNP 어드레스를 알림으로써 자신을 등록한다. 이 어드레스는 인터넷 어드레스가 아니지만, 그러나 SDNP 네트워크에서만 알려진 어드레스이며, 또한 인터넷을 통해 액세스될 수 없는데, 그 이유는 NAT 어드레스처럼 인터넷 프로토콜을 따름에도 불구하고 SDNP 어드레스가 인터넷에 의미가 없기 때문이다. 따라서 기재된 보안 동적 네트워크 및 프로토콜을 사용하는 통신은 IP 어드레스가 인터넷 상에서 인식될 수 없기 때문에, 또한 마지막 SDNP 어드레스 및 다음의 SDNP 어드레스, 즉 패킷의 다음 목적지가 주어진 패킷 내에 존재하기 때문에, "익명(anonymous)" 통신을 나타낸다.
SDNP 네트워크의 중요한 실시예는 주어진 하루 중 임의의 시간 내에 트래픽이 증가하거나 감소함에 따라, 클라우드의 총 사용 가능한 대역폭을 자동으로 변조하는 기능이다. 안정성이나 성능을 저하시킴 없이, 네트워크 비용을 서서히 최소화하면서 트래픽이 증가하거나 떨어질 때 더 많은 SDNP 통신 노드가 네트워크에 자동으로 추가된다.
이 특징은 여기에 기재된 SDNP 네트워크의 대역폭 및 확장은 요청이 이를 요구하였을 때 능력을 증가시킬 수 있도록, 운영 비용을 최소화하기 위해, 즉 사용되지 않는 노드에서 사용되지 않은 컴퓨팅 사이클에 대해 비용을 지불하지 않기 위해, 동적으로 조정될 수 있음을 의미한다. SDNP 네트워크의 소프트웨어 실행 또는 "소프트스위치" 실행의 이점은 오늘날 여전히 만연한 하드웨어 실행된 패킷 교환형 통신 네트워크의 고정 하드웨어 및 높은 비용과 크게 대조된다. 소프트스위치 실행 네트워크에서, SDNP 통신 소프트웨어에 로딩되고 네트워크 또는 인터넷에 연결된 임의의 통신 노드는, 도 77d의 네트워크 그래프에 도시된 바와 같이 필요에 따라 SDNP에 추가될 수 있으며, 여기서 컴퓨터 서버(1149D, 1149B, 1149F, 1149Q, 1149H, 1149N, 1149J, 1149S, 1149V)는 그 연결을 가로지르는 통신이나 노드에서의 트래픽에 대한 요구가 증가할 때, 통신 노드(Na,q, Na,d, Na,b, Na,f, Na,q, Na,h, Na,n, Na,v)로서 각각 추가될 수 있다.
따라서 SDNP 클라우드의 각 링크는 SDNP가 시작될 때만 설정되는, 즉 필요에 따라 새로운 통신 노드를 동작시키는 계층 3 네트워크 연결과 조합된, 대응하는 데이터 링크 계층 2와의 계층 1 PHY의 상시 연결된 물리적 연결로 관찰될 수 있다. 따라서 소프트스위치 기반의 SDNP 클라우드 자체는 적응력이 있고 동적이어서, 요구에 따라 변화한다. 심지어 알려지지 않은 대역폭 및 신뢰성을 갖는 임의의 디바이스 또는 컴퓨터를 통해 데이터가 지연되는 피어 대 피어 네트워크와는 달리, 각각의 SDNP 통신 노드는 SDNP 소프트스위치 소프트웨어로 로딩되고 또한 SDNP 클라우드에 참여하도록 완전히 권한이 부여된 사전 인증된 디바이스이고, 또한 그 규정된 보안 통신 프로토콜을 사용하여 데이터를 운반하며, 이는 정보 콘텐트(공유 비밀과 같은)와 구문, 예를 들어 헤더의 지정 포맷을 더한 것을 포함한다. 공유 비밀은 알고리즘, 시드 생성기, 스크램블링 방법, 암호화 방법 및 혼합 방법을 설명하지만, 그러나 전체 SDNP 데이터 패킷의 포맷을 규정하지는 않는다. 보안 설정, 즉 특별한 시간에 그리고 지정 통신에 사용되는 설정은 공유 비밀의 타입이지만, 그러나 공유 비밀은 사용되지 않는 알고리즘의 전체 목록도 포함한다. 소프트웨어가 암호화되고 알고리즘 및 공유 비밀이 동적으로 처리되기 때문에, 심지어 SDNP 코드가 아마존 또는 마이크로소프트와 같은 공용 클라우드에서 호스트된 경우에도, 서버 운영자는 전송되는 총 데이터 량 이외의 SDNP 통신 노드 상의 데이터 트래픽의 내용을 모니터할 수 있는 수단이 없다.
동적 네트워크의 자연스러운 확장으로서, 휴대폰, 태블릿 또는 노트북과 같은 새로운 SDNP 클라이언트는 전원이 켜질 때마다 SDNP 네임 서버 또는 게이트웨이에 자동으로 등록된다. 따라서 SDNP 클라우드뿐 아니라 연결에 사용할 수 있는 클라이언트 수가 자동으로 조정되기 때문에, 주어진 시간에 연결된 네트워크 및 활성 사용자의 수를 정확하게 반영한다.
스크램블된 또는 암호화된 메시형 라우팅 - 동적인 자율 기능을 지원하기 위해, 각 SDNP 통신 노드는 다중 대화, 코뮤니케 및 보안 세션을 동시에 지원하도록 데이터 혼합 및 분할, 스크램블링 및 언스크램블링, 암호화 및 해독의 규정된 조합을 동시에 실행한다. SDNP 네트워크의 소프트스위치 실시예에 있어서, 시행된 모든 기능 및 이들 동작의 시컨스는 공유 비밀을 통해 정의된 바와 같이 소프트웨어 기반 명령을 통해 완전히 구성되거나, 데이터 패킷에 의해 운반되거나, 또는 명령 및 제어를 위한 병렬 신호 채널에 의해 정의될 수 있으며, 또한 미디어를 운반하는 데 사용되는 SDNP 통신 노드로부터 별도로 제어 및 분리된다. 다수의 순열 및 조합이 가능하지만, 여기에 도시된 예는 SDNP 기반 통신의 유연성을 나타내고자 하는 것이며, 또한 기재된 다양한 SDNP 기능의 애플리케이션을 지정 데이터 처리 단계의 순서로는 제한하지 않는다. 예를 들어, 스크램블링은 혼합 또는 분할을 앞뒤로 수행할 수 있으며, 암호화는 처음, 마지막, 또는 그 사이에 발생할 수 있다.
도 78a에 도시된 재스크램블된 혼합 및 분할 동작(1155) 중 하나의 그러한 동작은, 각각의 들어오는 데이터 패킷 상에 수행된 언스크램블 동작(928), 스크램블링 동작(926)을 사용하여 새로운 데이터 패킷의 재스크램블링이 뒤따르는 혼합 및 분할 동작(1148)을 사용하여 데이터 패킷의 혼합 후 분할을 포함하는 통신 노드(Na,b, Na,d, Na,f, Na,h)로부터의 들어오는 다중 데이터 패킷 상에 SDNP 지정 기능의 시컨스를 수행하고, 이들 패킷을 메시형 통신 네트워크 상으로 포워딩한다. 도 78b에 도시된 바와 같이, 혼합 동작(1089)이 뒤따르는 각각의 입력에서 다수의 독립적인 언스크램블링 동작(928)을 수행하는 시컨스는, "메시형 입력의 언스크램블된 혼합" 동작(1156A)을 포함한다. 편의상, 상기 시컨스는 언스크램블 및 혼합 동작(1161)에 의해 기호로 표현될 수 있다.
도 78c에 도시된 메시형 출력에 대한 스크램블 및 혼합 동작의 역기능인 "분할 및 스크램블 동작"(1156B)은, 각각의 출력에 대해 다수의 독립적인 스크램블링 동작(926)을 수행함으로써 뒤따르는 분할 동작(1106)으로 데이터 패킷을 분할하는 시컨스를 포함한다. 편의상, 상기 시컨스는 분할 및 스크램블 동작(1162)에 의해 기호로 표현될 수 있다. 도 78d에 도시된 바와 같이, 메시형 입력의 2개의 언스크램블된 혼합과 분할이 뒤따르는 메시형 입력 동작(1156A)의 언스크램블된 혼합을 조합한 2개의 시컨스 조합은, 동작(1163)으로서 기호로 도시된 메시형 전송에 대한 "재스크램블 및 재혼합" 동작을 포함한다.
메시형 출력에 대한 분할 및 스크램블 동작(1162)이 뒤따르는 메시형 입력 동작(1161)의 전술한 언스크램블된 혼합의 적용이 도 79a에 도시되어 있으며, 여기서 대응하는 통신 노드(Na,b, Na,d, Na,f, Na,h)로부터의 고정 길이 데이터 패킷 입력(1157B, 1157D, 1157F, 1157H)은 긴 데이터 패킷(1160)을 형성하기 위해 통신 노드(Na,j)에서 메시형 입력 동작(1156)의 언스크램블된 혼합에 의해 처리된다. 동작(1156)은 혼합 전에 입력 데이터 패킷을 독립적으로 언스크램블하기 위한 기능을 포함하며, 그 단계는 요구되지 않으므로 따라서 생략되는데, 그 이유는 고정 길이 데이터 패킷 입력(1157B, 1157D, 1157F, 1157H)이 스크램블되지 않기 때문이다. 긴 데이터 패킷(1160)은 그 후 분할 및 스크램블 동작(1162)에 의해 처리되어, 메시형 전송을 위해 대응하는 통신 노드(Na,n, Na,q, Na,s, Na,v) 상으로 송신되는 스크램블된 데이터 패킷(1158N, 1158Q, 1158S, 1158V)으로 나타난다.
고정-길이 패킷의 메시형 전송을 위한 동일한 스크램블된 혼합 및 분리 동작은 스크램블되는 들어오는 데이터 패킷(1165B, 1165D, 1165F, 1165H)을 위해 도 79b에 도시되어 있다. 이들 데이터 패킷에는 식별 번호가 없는 데이터 세그먼트로 도시된 바와 같이 정크 데이터 세그먼트를 포함한다. 그 후, 통신 노드(Ni,j)의 언스크램블링 및 혼합 동작(1161)은 정크 데이터 패킷이 의도적으로 제거되었기 때문에 이전의 예보다 짧은 긴 패킷(1166)을 생성한다. 본 발명의 대안적인 실시예에 있어서, 정크 패킷은 유지될 수 있다. 긴 패킷(1166)은 분할 및 스크램블링 동작(1162)에 의해 다음에 처리되어, 메시형을 위해 대응하는 통신 노드(Na,n, Na,q, Na,s, Na,v)로 송신되는 다중 데이터 패킷 출력(1165N, 1165Q, 1165S, 1165V) 상으로 송신된다. 이들 데이터 패킷에서, 소정의 데이터 세그먼트의 수로 데이터 패킷을 채우기 위해 정크 데이터가 재삽입되었다. 일반적으로, 데이터 패킷(1165N, 1165S)에 의해 도시된 바와 같이, 데이터 패킷(1165N, 1165S)의 단부에 정크 데이터 세그먼트의 삽입을 처리하는 것이 바람직하고 또한 더 용이하지만, 알고리즘이 그렇게 규정한다면, 정크 패킷은 선택적으로 데이터 패킷의 다른 곳에, 예를 들어 데이터 패킷(1165V)에 도시된 바와 같은 제1 슬롯에 삽입될 수 있다.
본 발명에 따른 통신 네트워크(1114)를 가로질러 정적 스크램블링에 의한 동적 메시 데이터 전송의 예가 도 80에 도시되어 있으며, 이는 SDNP 통신 소프트웨어를 실행하는 상호 연결된 컴퓨터 서버(1118)의 네트워크를 포함한다. 통신 노드(N0,0)는 스크램블 및 분리 동작(1162)을 수행하고, 통신 노드(Nf,f)는 혼합 및 언스크램블 동작(1161)을 수행하며, 모든 다른 통신 노드는 재스크램블 및 재혼합 동작(1163)을 수행한다. 도시된 예에 있어서, 각각의 서버가 오직 하나의 전용 동작만을 수행하더라도, 모든 컴퓨터 서버(1118) 상에 설치된 SDNP 소프트웨어는 여기에 기재된 바와 같이 스크램블 및 분리 동작(1162), 언스크램블 및 혼합 동작(1161), 재스크램블 및 재혼합 동작(1163) 등을 포함하도록 요구되는 바와 같은 SDNP 기능들 중 임의의 것을 수행할 수 있음을 인식해야 한다.
동작 시, 입력 데이터 패킷(1055)은 스크램블 및 분할 동작(1162)에 의해 시간(t1)에서 통신 노드(N0,0)에 의해 먼저 스크램블되어, 스크램블된 데이터 패킷(1130)을 생성하며, 이는 그 후 가변 길이의 4개의 패킷, 특히 제1 슬롯에 데이터 세그먼트(1F) 및 관련의 정크 데이터 세그먼트를 포함하는 데이터 패킷(1170A), 데이터 세그먼트(1C)를 포함하는 패킷(1170B), 역순으로 데이터 세그먼트(1A, 1D)를 포함하는 데이터 패킷(1170C), 및 오름차순으로 데이터 세그먼트(1B, 1E)를 포함하는 데이터 패킷(1170D)으로 분할된다. 도시된 데이터 세그먼트는 다른 데이터 패킷 및 대화로부터의 그리고 가변 길이의 다른 데이터 세그먼트와 조합될 수 있으며, 여기서 명확함을 위해 다른 대화의 데이터 세그먼트는 의도적으로 도면에서 빠졌다. 데이터 패킷이 네트워크를 횡단하고 또한 그 콘텐츠가 분할되고 재혼합됨에 따라 시간이 흐른다는 것을 인식해야 한다. 그러나 설명의 명확함을 위해, 통신 프로세스의 시작과 결론에 표시된 일부 예시적인 시간을 제외하고 시간은 의도적으로 도면에서 제외되었다.
동적 메시형 전송 중, 데이터 패킷의 콘텐트, 그 관련 데이터 세그먼트는 네트워크를 횡단할 때 변경된다. 예를 들어, 정크 데이터 세그먼트 및 데이터 세그먼트(1F)를 포함하는 데이터 패킷(1170A)은 먼저 통신 노드(N0,0)로부터 통신 노드(N1,1)로, 그 후 통신 노드(N2,1)로, 그리고 통신 노드(N2,3)로 통신 노드를 순차적으로 횡단하며, 여기서 이는 데이터 세그먼트 시컨스(1C, 1F)를 포함하는 데이터 패킷(1171A) 및 통신 노드(N1,2)로 송신되는 정크 데이터 세그먼트를 형성하기 위해 데이터 세그먼트(1C)를 포함하는 데이터 패킷(1170B)과 혼합된다. 동일한 시간 주기 중, 데이터 세그먼트 시컨스(1D, 1A)를 포함하는 데이터 패킷(1170C)은, 통신 노드(N0,0)로부터 통신 노드(N3,1)로 전송되며, 여기서 이는 데이터 패킷(1171C)으로서 변경되지 않을 상태로 통신 노드(N3,2)로 포워딩된다. 통신 노드(N3,1)에 의해 수행되는 혼합 및 분할 동작의 일부로서, 콘텐트가 없는 완전히 정크 데이터를 포함하는 제2 데이터 패킷(1171B)이 생성되어 통신 노드(N2,1)로 전송된다. 콘텐트가 없는 전체 정크 패킷을 라우팅하는 이유는 2가지가 있으며, 첫째로는 통신 노드(N3,1)로부터 2개 이상의 데이터 패킷을 출력함으로써 사이버 해적을 혼란시키고, 두 번째로 달리 사용되지 않은 링크 또는 루트로부터 업데이트된 네트워크 내 전파 지연 데이터를 얻기 위한 것이다.
통신 노드(N3)에 들어감에 따라, 데이터 패킷(1171C)은 2개의 데이터 패킷으로 분할되며, 즉 통신 노드(N3.3)로 전송되는 데이터 세그먼트(1D)를 포함하는 데이터 패킷(1172C), 및 데이터 세그먼트(1A) 및 통신 노드(N2,3)로 전송되는 정크 데이터를 포함하는 선단의 데이터 세그먼트를 포함하는 데이터 패킷(1172B)으로 분할된다. 서버(N2,3)에 도달함에 따라, 데이터 패킷(1172B)은 들어오는 패킷(1171A)과 혼합되고, 그 후 데이터 세그먼트(1F, 1A)를 포함하는 패킷(1173A)으로 다시 분할되고, 정크 데이터 세그먼트가 부가되어 데이터 패킷을 형성하는 통신 노드(N1,4)로 송신되며, 이는 시간(t14)에서 최종 통신 노드(Nf,f)로 전송된다. 동시 시컨스에서, 통신 노드(N2,3)에서 수행된 분할 동작의 결과로서, 데이터 패킷(1173B)은 통신 노드(N3,4)로 전송되고, 여기서 후행하는 정크 데이터 세그먼트는 시간(t16)(도시되지 않은 시간)에서 이를 최종 통신 노드(Nf,f)로 송신하기 전에 데이터 세그먼트(IC)에 추가된다.
반면에, 데이터 세그먼트(1E, 1D)를 포함하는 데이터 패킷(1170D)은 통신 노드(N0,0)로부터 통신 노드(N4,1)로, 그리고 통신 노드(N4,2)로 전송되고, 여기서 이는 재스크램블되어, 역순서로 데이터 세그먼트(1B, 1E)를 포함하는 데이터 패킷(1172D)을 형성한다. 통신 노드(N3,3)에 들어감에 따라, 데이터 패킷(1172D)은 데이터 패킷(1172C)과 혼합된 후 다시 분할되어, 데이터 패킷(1173C, 1173D)을 형성한다. 데이터 세그먼트(1B)를 포함하는 데이터 패킷(1173C)은, 이것이 시간(t15)에서 데이터 노드(1174B)로서 최종 서버(Nf,f)로 전송되는 통신 노드(N2,4)로 전송된다. 데이터 패킷(1173C, 1174B)은 동일하고 또한 각각이 오직 데이터 세그먼트(1B)만을 포함하지만, 즉 패킷(1173C)이 사실상 통신 노드(N2,4)에 의해 변경되지 않지만, 이는 시간(t15) 및 시드, 키, 공유 비밀, 알고리즘, 등을 포함하는 그 대응하는 상태와 일치한다. 통신 노드(N3,3)를 나가는 다른 데이터 패킷, 즉 데이터 패킷(1173D)은 통신 노드(N4,3)로 라우팅되어 통신 노드(N4,4)로 전달되며, 여기서 중재 정크 데이터 세그먼트는 대응하는 상태(1137)로 시간(t17)에서 데이터 패킷(1174D)을 생성하도록 데이터 세그먼트(1E, 1D) 사이에 삽입된다. 상이한 상태를 사용하여 각각 형성되고 또한 상이한 시간, 특히 시간(t14, t15, t16, t17)에서 생성되는 데이터 패킷(1174A, 1174B, 1174C, 1174D)은 그 후 시간(tf)에서 본래의 언스크램블된 데이터 패킷(1055)을 재생성하기 위해, 언스크램블 및 혼합 동작(1161)을 사용하여 통신 노드(Nf,f)에서 함께 재스크램블 및 혼합된다. 모든 노드는 데이터의 들어오는 패킷을 처리하기 위해 무엇을 할지 알고 있는데, 그 이유는 패킷 또는 다른 식별자의 상태가 노드에 의해 알려진 공유 비밀의 세트에 대응하기 때문에, 또는 특별한 패킷이 도착하였을 때 선험적인 무엇을 할지를 노드에 시그널링 서버에 호출하기 때문이다.
정적 메시형 전송에서처럼, 동적 메시형 전송에서 데이터 경로는 상이한 길이를 가질 수 있고 또한 상이한 전달 지연을 나타낼 수 있다. 결과적으로, 일부 데이터 패킷은 다른 것들 보다 먼저 최종 통신 노드(Nf,f)에 도착할 수 있다. 이러한 경우에, 본 발명에 따르면, 데이터 패킷은 다른 관련 데이터 패킷이 도달할 때까지 통신 노드(Nf,f)에 일시적으로 유지되어야만 한다. 그리고 도면이 본래의 데이터 패킷(1055)의 최종 조립 및 복구가 통신 노드(Nf,f)에서 발생하는 것을 나타내고 있지만, 실제로 최종 패킷 재조립은 데스크탑, 노트북, 휴대폰, 태블릿, 셋톱박스, 자동차, 냉장고, 또는 네트워크에 연결된 다른 하드웨어 디바이스가 될 수 있다. 환언하면, 메시형 전송과 관련하여, 통신 노드와 상기 통신 노드에 연결된 디바이스 사이에는 차이가 없으며, 즉, 통신 노드(Nf,f)는 진정한 대용량 서버 대신에 데스크탑 컴퓨터로서 간주 될 수 있다. 기재된 SDNP 클라우드에 대한 디바이스의 연결, 즉 라스트 마일 연결은 본 출원에서 나중에 더 상세히 논의된다.
전술한 바와 같이, 전술한 동적 라우팅은 스크램블링, 암호화 또는 이들의 조합을 포함하는 기재된 바와 같은 전술한 SDNP 방법 중 하나 또는 그 이상과 조합될 수 있다. 도 81a에 도시된 이러한 하나의 동작, 즉 암호화된 혼합 및 분할 동작(1180)은 각각의 들어오는 데이터 패킷 상에 수행되는 해독 동작(1032), 암호화 동작(1026)을 사용하여 새로운 데이터 패킷의 재암호화가 뒤따르고, 또한 메시형 통신 네트워크를 가로질러 이들 패킷을 뒤따르는, 혼합 및 분할 동작(1148)을 사용하여 데이터 패킷의 혼합 및 분할을 포함하는, 통신 노드(Na,b, Na,d, Na,f, Na,h)로부터 들어오는 다중 데이터 패킷 상에 SDNP 지정 동작의 시컨스를 수행한다. 도시된 바와 같이, 들어오는 데이터 패킷은 이전에 암호화되었으며, 또한 판독 불가능한 암호문 패킷(1181A, 1183A) 및 도시되지 않은 다른 것을 포함한다. 각각의 들어오는 패킷을 생성하는 데 사용되는 시간, 상태 및 암호화 알고리즘에 지정한 암호문 입력을 해독하는 데 필요한 해독 키는, 지정 데이터 패킷 또는 코뮤니케로 비 암호화된 데이터 패킷에 존재하는 공유 비밀, 키로서, 또는 다른 통신 채널을 통해 공급된 키로서, 해독을 수행하기 전에 해독 동작(1032)을 통과해야만 한다. 본 발명에서 나중에 기재되는 바와 같이, 상기 키는 대칭 또는 비대칭일 수 있다. 키 교환의 주제는 본 발명에서 나중에 논의된다.
일단 해독되었다면, 데이터 패킷은 평문 패킷(1182A, 1184A) 및 도시되지 않은 다른 것으로 되고, 그 후 평문을 포함하는 긴 패킷(1185)으로 통신 노드(Na,j)에 의해 혼합되며, 이어서 새로운 평문 패킷(1182B, 1184B) 및 도시되지 않은 다른 것으로 분할된다. 그 지정 시간 또는 상태에 기초하여 새로운 상이한 암호화 키를 사용하여, 데이터 패킷은 그 후 암호화되어, 새로운 암호 텍스트 패킷(1181B, 1183B) 및 도시되지 않은 다른 것들을 형성하여, 다른 통신 노드로 전송된다. 도 81b에 도시된 바와 같이, 혼합 동작(1089)이 뒤따르는 각각의 입력에 대해 다수의 독립적인 해독 동작(1032)을 수행하는 시컨스는, 혼합 동작(1090)을 해독함으로써 기호로 표현된 "메시형 입력의 혼합 해독"을 포함한다. 메시형 출력에 대한 "분할 및 암호화"는 도 81c에 도시된 바와 같이, 각 출력에 대해 다수의 독립적인 암호화 동작(1026)의 수행이 뒤따르는, 분할 동작(1106)으로 데이터 패킷을 분할하는 시컨스를 포함한다. 편의상, 상기 시컨스는 분할 및 암호화 동작(1091)에 의해 기호로 표현될 수 있다.
도 82a는 본 발명에 따라 메시형 전송을 위한 다중 통신 노드(Na,b, Na,d, Na,f, Na,h)로부터의 데이터 패킷을 재암호화, 재스크램블링 및 재분할하는 예를 도시하고 있다. 통신 노드(Na,j)에 들어오는 들어오는 데이터 패킷 상에 재암호화, 혼합, 및 분할 동작(1201)을 사용하면, 각각의 들어오는 데이터 패킷은 해독 동작(1032)에 의해 독립적으로 해독되고, 언스크램블링 동작(928)에 의해 언스크램블되고, 그 후 혼합 동작(1089)에 의해 혼합되며, 이어서 분할 동작(1106)에 의해 다중의 새로운 데이터 패킷으로 분할된다. 그 후, 각각의 데이터 패킷은 스크램블링 동작(926)을 사용하여 독립적으로 스크램블되고, 암호화(1026)를 사용하여 다시 암호화되며, 그 후 메시형 통신 네트워크를 사용하여 앞으로 포워딩된다. 도시된 바와 같이, 들어오는 데이터 패킷은 이미 암호화되었으며, 또한 판독 불가능한 암호문(1194A, 1197A) 및 도시되지 않은 다른 것을 포함한다.
각각의 들어오는 패킷을 생성하는 데 사용되는 시간, 상태 및 알고리즘에 지정한, 암호문 입력을 언스크램블링하고 해독하는 데 필요한 시간 및 상태 정보, 공유 비밀, 수치 시드, 알고리즘 및 해독 키는, 해독 및 언스크램블링 동작을 수행하기 전에, 지정 데이터 패킷 또는 코뮤니케와 함께 전송된 암호화되지 않은 데이터 패킷에 존재하는 공유 비밀, 키 또는 수치 시드로서, 또는 다른 통신 채널을 통해 공급된 수치 시드로서, 해독 동작(1032)을 통과해야만 한다. 상기 키는 대칭 또는 비대칭일 수 있다. 키 교환 및 수치 시드 전달에 관한 주제는 본 발명의 후반부에서 논의된다. 모든 노드는 시트와 같은 패킷의 상태 또는 다른 식별자가 노드에 의해 알려진 공유 비밀 세트에 대응하기 때문에, 또는 특별한 패킷이 도착하였을 때 별도의 서버가 선험적으로 무엇을 해야 할지 노드에게 호출하기 때문에, 들어오는 데이터의 패킷을 처리하기 위해 해야 할 것을 알고 있다.
일단 해독되었다면, 평문 패킷(1195A, 1198A) 및 도시되지 않은 다른 것은, 대응하는 언스크램블된 평문 패킷(1196A, 1199A) 및 도시되지 않은 것을 생성하기 위해, 언스크램블링 동작(928)을 이용하여 언스크램블된다. 혼합 동작(1089)을 사용하여, 상기 언스크램블된 평문 패킷은 통신 노드(Na,j)에 의해 긴 패킷(1220)으로 혼합되며, 이는 스크램블된 평문 패킷(1195B, 1198B) 및 도시되지 않은 다른 것을 생성하기 위해, 분할 동작(1106)에서 새로운 언스크램블된 평문 패킷(1196B, 1199B) 및 도시되지 않은 다른 것으로 분할되고, 그 후 현재 시간 또는 상태에 대응하는 새로운 수치 시드를 사용하여 스크램블링 동작(926)에 의해 새로이 스크램블된다. 그 지정 시간 또는 상태에 기초한 새로운 상이한 암호화 키를 사용하여, 상기 데이터 패킷은 암호화 동작(1026)에 의해 다시 암호화되어 새로운 암호 텍스트(1194B, 1197B) 및 도시되지 않은 다른 것을 형성하고, 이어서 다른 통신 노드로 송신된다.
본 발명에 따라 논의된 바와 같이, SDNP 통신은 암호화, 스크램블링, 혼합, 분할, 언스크램블링 및 해독의 임의의 시컨스를 포함할 수 있다. 적어도 이론적으로, 실행된 시컨스가 알려진 순차적으로 발생하고, 수학적으로 함수 y = H {G [F(x)]}로서 기재되었고, 여기서 가장 안쪽의 함수(F)가 먼저 수행되고 최외곽 함수(H)가 마지막으로 수행되었다면, 그 후 본래의 데이터(x)를 복구하기 위해, 반-함수는 역순으로 실행되어야 하며, 여기서 H-1 이 먼저 수행되고, F-1 이 마지막으로 수행된다. 즉, x = F-1{G-1[H-1(y)]} 이다. 이 선입 선출 동작 시컨스는 변경을 취소하고 본래 콘텐트를 복구해야 하지만, 그러나 프로세스 과정에서 패킷으로부터 데이터가 제거되거나 패킷 내에 삽입되지 않은 경우에만 본래 콘텐트를 복구해야 한다. 데이터가 패킷으로부터 제거되었거나 패킷 내로 삽입되었다면, 스크램블된 또는 암호화된 파일이 오염되어 복구될 수 없다. 예를 들어 상이한 암호화 방법을 사용하여 암호화된 데이터를 혼합하면, 본래 구성요소를 먼저 복구하지 않고는 암호화될 수 없는 데이터를 생성한다. 필요에 따라 주어진 통신 노드가 패킷을 혼합하거나 분리할 수 없다면, 다중 대화를 동적으로 혼합, 분할 및 라우팅함으로써 모든 콘텐트를 모호하게 하는 SDNP 전송을 사용하는 동적 메시형 통신의 하나의 주요 이점이 손실된다.
따라서 이는 스크램블링 및 암호화 동작 전에 데이터 패킷을 혼합하기보다는, 통신 노드의 개별 출력을 벗어나는 데이터 패킷에 대해 스크램블링 및 암호화를 독립적으로 수행하는 SDNP 통신의 일 실시예이다. 따라서 통신 노드에 들어가는 데이터 패킷이 암호화되거나, 스크램블되거나 또는 이 모두라면, 이들은 혼합되기 전에, 즉 긴 혼합된 패킷을 형성하기 전에, 독립적으로 언스크램블 및 암호가 해제되어야만 한다. 따라서 들어오는 패킷에 대한 바람직한 동작 시컨스는 통신 노드의 각 입력 상의 입력 데이터를 순차적으로 해독, 해독 및 혼합하거나 또는 들어오는 데이터를 해독하고 혼합하도록 대안적인 순차적으로 혼합하는 것이다.
이전의 경우가 도 82b에 도시되어 있으며, 여기서 "DUM" 동작(1209)으로서 개략적으로 그리고 DUM 동작(1210)에 의해 기호로 도시된 해독, 언스크램블 및 혼합 메시형 입력 동작은 각각의 입력에 대해 해독 동작(1032), 언스크램블링 동작(928), 및 혼합 오작(1089)을 사용하여 결과적인 데이터 패킷을 혼합하는 시컨스를 독립적으로 수행하는 단계를 포함한다. 각각의 입력 상에 존재하는 개별적인 스위치(1208A, 1208B)는 필요에 따라 해독 동작(1032) 중 하나 또는 언스크램블링 동작(928) 중 하나의 둘레로 데이터 패킷을 전환시키는 데 사용된다. 예를 들어, 지정 입력에서 두 스위치가 "개방"으로 교환되었다면, 모든 데이터 패킷은 수반하는 해독 동작(1032) 및 수반하는 언스크램블링 동작(928) 모두를 통과해야만 하며, 또한 데이터 패킷은 반드시 해독되고 언스크램블될 것이다. 두 스위치가 닫히면, 동작은 "단락"되고, 데이터는 해독 동작(1032)에 의해서나 또는 언스크램블링 동작(928)에 의해서는 처리되지 않으며, 즉 데이터는 변경되지 않고 혼합 동작(1089)으로 전달된다.
스위치(1208A)가 폐쇄되고 1208B가 개방되었다면, 데이터는 해독 동작(1032) 주위로 우회되지만, 그러나 언스크램블링 동작(928)을 통과하며, 이는 입력 데이터 패킷이 언스크램블되지만 해독되지 않을 것임을 의미한다. 다른 한편으로, 스위치(1208A)가 개방되고 스위치(1208B)가 폐쇄되었다면, 데이터는 해독 동작(1032)을 통과하지만, 언스크램블링 동작(928)을 우회하므로, 이는 들어오는 데이터 패킷은 해독되지만 그러나 언스크램블되지 않을 것임을 의미한다. 해독 동작(1032) 및 언스크램블링 동작(928)이 일반적으로 소프트웨어로 실행되기 때문에, 신호를 전환시키는 물리적 스위치는 없다. 스위치(1208A, 1208B)는 소프트웨어의 동작을 기호로 나타낸다. 특히 동작과 평행한 스위치가 개방되어 있다면, 적용 가능한 소프트웨어는 동작을 수행하고, 동작과 평행한 스위치가 폐쇄되어 있다면, 적용 가능한 소프트웨어는 해당 그 동작을 수행하지 않고 그 입력을 그 출력으로 변경하지 않고 통과한다. 전자 은유(electronics metaphor)에 있어서, 기능은 신호가 처리되지 않고 통과하도록 폐쇄된 스위치에 의해 "단락"된다. 상기 조합은 이하의 진정한 표에서 해독 동작(1032)과 병렬인 스위치(1208A)가 스위치(A)로서 지칭되고 또한 스크램블링 동작(928)과 병렬인 스위치(1208B)가 스위치(B)로 지칭되어 요약된다.
스위치 A 스위치 B 해독 언스크램블링 데이터 패킷의 효과
개방 개방 해독 후 언스크램블링
폐쇄 개방 아니오 오직 언스크램블링만
개방 폐쇄 아니오 오직 해독만
폐쇄 폐쇄 아니오 아니오 데이터 패킷 변경되지 않음
역기능, 분할, 스크램블 및 암호화 동작은 "SSE"동작(1209)에 의해 기호로, 그리고 SSE 동작(1213)에 의해 기호로, 도 82c에 개략적으로 도시되어 있으며, 암호화 동작(1026)이 뒤따르는 언스크램블링 동작(926)의 독립적인 수행이 뒤따르는 분할 동작(1106)을 사용하는 분할을 포함한다. 각각의 입력에 제공된 스위치(1211B, 1211A)는 필요에 따라 데이터 패킷을 스크램블링 동작(926) 또는 암호화 동작(1026)의 둘레로 각각 전환시키는 데 사용된다. 예를 들어, 지정 입력에서 두 스위치(1211B, 1211A) 모두가 "개방"이라면, 모든 데이터 패킷은 스크램블링 동작(926) 및 암호화 동작(1026)에 들어가서 처리되어야 하며, 데이터 패킷은 반드시 스크램블되고 암호화될 것이다. 두 스위치가 폐쇄되었다면, 동작은 "단락"되고, 데이터는 스위치(1211B, 1211A)를 통과하며, 스크램블링 동작(926)이나 암호화 동작(1026)에 의해 처리되지 않으며, 이는 특별한 입력의 데이터가 분할 동작(1106)으로부터 출력으로 변경되지 않고 통과된다는 의미한다.
스위치(1211B)가 폐쇄되고 1211A가 개방되었다면, 데이터는 스크램블링 동작(926) 주위로 전환되지만 그러나 암호화 동작(1026)에 의해 처리되며, 이는 나가는 데이터 패킷이 암호화되지만 그러나 스크램블되지는 않음을 의미한다. 대안적으로, 스위치(1211B)가 개방되어 있고 스위치(1211A)가 폐쇄되었다면, 데이터는 스크램블링 동작(926)을 통해 처리되지만 그러나 암호화 동작(1026)의 둘레로 전환되며, 이는 나가는 데이터 패킷이 스크램블되지만 암호화되지는 않을 것임을 의미한다.
전술한 바와 같이, 스크램블링 동작(926) 및 암호화 동작(1026)이 일반적으로 소프트웨어로 실행되기 때문에, 신호를 전환시키는 물리적 스위치는 없으며, 스위치(1211B, 1211A)는 소프트웨어의 동작을 기호로 나타낸다. 특히, 동작과 평행한 스위치가 개방되어 있으면 적용 가능한 소프트웨어가 동작을 수행하고, 동작과 병렬로 연결된 스위치가 폐쇄되었다면 적용 가능한 소프트웨어는 동작을 수행하지 않고 그 입력을 그 출력으로 변경하지 않고 단순히 통과한다. 전자 은유에 있어서, 기능은 신호가 처리되지 않고 통과하도록 폐쇄된 스위치에 의해 "단락"된다. 그 조합이 이하의 진정한 표에 요약되어 있으며, 여기서 스크램블링 동작(926)과 평행한 스위치(1211B)는 스위치(B)로 지칭되고, 암호화 동작(1026)과 평행한 스위치(1211A)는 스위치(A)로 지칭된다.
스위치 B 스위치 A 스크램블링 암호화 데이터 패킷의 효과
개방 개방 스크램블링 후 암호화
폐쇄 개방 아니오 오직 암호화만
개방 폐쇄 아니오 오직 스크램블링만
폐쇄 폐쇄 아니오 아니오 데이터 패킷 변경되지 않음
다중-입력 DUM(1209)과 다중-출력 SSE(1212)의 조합은 본 발명에 따라 보안 통신을 달성하기 위해 매우 다양한 요소를 형성하며, 여기에서는 도 83a에 도시된 SDNP 미디어 노드(1201)로서 지칭된다. 도시된 바와 같이, 다중 입력 중 임의의 하나에 들어가는 데이터는 시컨스에서 먼저 해독 동작(1032)에 의해 해독될 수 있거나, 또는 해독 동작(1032)이 우회될 수 있다. 그 후, 데이터 패킷은 언스크램블링 동작(928)에 의해 언스크램블될 수 있거나, 또는 언스크램블링 동작(928)이 우회될 수 있다. 일단 처리된 다양한 입력은 혼합 동작(1089)을 사용하여 혼합될 수 있고, 이어서 분할 동작(1106)에 의해 새로운 패킷으로 분할될 수 있다. 각각의 개별적인 출력의 데이터 패킷은 스크램블링 동작(926)에 의해 다음에 스크램블되거나, 또는 대안적으로 스크램블링 동작(926)이 우회되고, 그 후 암모화(1026)에 의해 암호화되거나 또는 대안적으로 암호화 동작(926)이 우회될 수 있다.
"미디어 노드"라는 명칭은, 특히 실시간 음성, 텍스트, 음악, 비디오, 파일, 코드 등을 나타내는 콘텐트, 즉 미디어 콘텐트를 운반, 라우팅, 및 처리하기 위해 본 발명에 따라 이 통신 노드의 통신 소프트웨어 또는 "소프트스위치의 적용을 반영한다. 도 83b에 도시된 바와 같이, SDNP 미디어 노드는 편의 상 서버(1215) 상에 호스트된 SDNP 미디어 노드(Ma,j)로서 기호로 표시된다. 동일한 코드를 사용하여, 신호 처리의 모든 조합은 기재된 이하의 예를 포함하여, 기재된 SDNP 미디어 노드를 사용하여 가능하다:
- "단일 루트 통과" - "있는 그대로" 또는 대안적으로 정크 패킷을 삽입하거나 제거함으로써 또는 들어오는 데이터 패킷을 더 짧은 다중 데이터 패킷으로 파싱함으로써, 단일 입력이 단일 출력으로 라우팅된다. 도 83c에 개략적으로 그리고 기호로 단일 루트 통과 동작(1217A)로서 도시된 이 기능은, 미디어 노드가 통신 네트워크에서 신호 중계기로서 단순히 동작할 때 유용하다. 도시된 바와 같은 정크 및 파스 함수(1053, 1052)는 패킷 혼합 동작(1061) 및 패킷 분리 동작(1057)의 필수 특징이며, 단지 편의 상 여기에 포함된다.
- "중복 루트 복제" - 동일한 복사본 및/또는 데이터 시컨스를 2개 또는 그 이상의 출력으로 포워딩하기 전에, "있는 그대로" 송신되거나 또는 대안적으로 정크 패킷을 삽입하거나 제거하고 또는 들어오는 데이터 패킷을 더 짧은 다중 데이터 패킷으로 파싱함으로써, 단일 입력이 복사되어 2개 이상의 출력에 송신된다. 중복 루트 복제 동작(1217B)으로서 도 83d에 개략적으로 그리고 기호로 도시된 이 기능은 VIP 클라이언트 또는 긴급 통신을 위한 "레이스 라우팅", 즉 상이한 경로에 의해 2개의 사본을 송신하고 그 목적지에 먼저 도달하는 것을 사용하는 동작을 실행하기에 유용하다. 정크 및 파스 함수(1053, 1052)는 패킷 혼합 동작(1061) 및 패킷 분할 동작(1057)의 필수 특징이며, 편의 상 여기에 포함된다.
- 단일 입력이 스크램블되고 패킷이 이미 암호화되었는지의 여부와는 관계없이 단일 출력으로 라우팅되는 "단일 루트 스크램블링". 도 83e에 도시된 바와 같이, 단일 루트 스크램블링은 다중 루트 또는 메시형 전송을 위해 데이터 패킷이 분할되거나 혼합되기 전에, 클라이언트와 클라우드 사이 또는 코뮤니케 사이의 퍼스트 마일 통신에 유용하다. 단일 루트 스크램블링 동작(1217C)으로서 개략적으로 및 기호로 표현된 기능은 단일 입력 패킷 분할 동작(1057)을 포함하며, 이 경우에는 오직 스크램블 동작(1268B)만 뒤따르는 파싱을 위해 정크 삽입 및 삭제 및 삭제를 위해서만 사용된다.
- "단일 루트 언스크램블"-도 83f에 단일 루트 언스크램블링 동작(1217D)으로서 기호로 도시된 단일 루트 스크램블링의 역은 스크램블링 전에 패킷이 이미 암호화되었는지의 여부와는 관계없이 스크램블된 패킷을 그 언스크램블된 상태로 되돌리는 데 사용된다. 상기 기능은 정크 삽입 조작 및 삭제를 위해 그리고 패킷 파싱을 위해 사용된 사용되는 단일 루트 혼합 동작(1061)이 뒤따르는 오직 언스크램블 동작(1226A)의 일련의 조합을 포함한다.
- 이전의 2개의 단일 루트 언스크램블링 및 스크램블링 기능을 순차적으로 수행함으로써, 도 83g에 단일 루트 재스크램블링 동작(1216C)으로서 개략적으로 그리고 기호로 도시된 "단일 루트 재스크램블링"은 단일 경로에서 패킷 스크램블링을 동적으로 리프레시하는 데 유용하다.
- "단일 루트 암호화"-단일 입력은 암호화되어 이미 패킷이 스크램블되었는지의 여부와는 관계없이 단일 출력으로 라우팅된다. 도 83h에 단일 루트 암호화 동작(1217E)으로서 개략적으로 그리고 기호로 표현된 이 기능은 데이터 패킷이 다중 경로 또는 메시형 전송을 위해 분할되거나 혼합되기 전에 클라우드 외부 또는 코뮤니케에 대한 퍼스트 마일 통신에 유용하다. 도시된 바와 같은 기능은 단일 입력 패킷 분할 동작(1057)을 포함하며, 이 경우에는 암호화 전용 동작(1226D)이 뒤따르는 정크 삽입 및 삭제 및 파싱을 위해서만 사용된다.
- 도 83i에 단일 루트 해독 동작(1217F)으로서 기호로 도시된 단일 루트 암호화의 역인 "단일 루트 해독"은 패킷이 암호화 이전에 이미 스크램블되었는지의 여부와는 관계없이, 암호화된 패킷을 암호화되지 않은 상태로 복귀시키는 데 사용된다. 이 기능은 정크 삽입 및 삭제 및 패킷 파싱을 위해 그리고 패킷 파싱을 위해 사용되는 단일 경로 혼합 동작(1061)이 뒤따르는 해독 전용 동작(1226C)의 직렬 조합을 포함한다.
- 이전의 2개의 단일 루트 해독 및 암호화 기능을 순차적으로 수행함으로써 도 83j에 단일 루트 재암호화 동작(1216D)로 개략적으로 그리고 기호로 표시된 "단일 루트 재암호화"는 단일 경로에서 패킷 암호화를 동적으로 리프레시하는 데 유용하다.
- "단일 루트 스크램블 암호화"-단일 입력이 모두 스크램블되고 암호화되며 단일 출력으로 라우팅된다. 도 83k에 단일 루트 스크램블링 암호화 동작(1217G)으로서 개략적으로 그리고 기호로서 표현된 이 기능은 데이터 패킷이 다중 루트 또는 메시형 전송을 위해 분할되거나 혼합되기 전에 클라우드 외부에 또는 코뮤니케를 위해 퍼스트 마일 통신에 유용하다. 도시된 바와 같은 기능은 단일 입력 패킷 분할 동작(1057)을 포함하며, 이 경우에는 정크 삽입 및 삭제를 위해 그리고 파싱을 위해서만 사용되며, 스크램블링 및 암호화 동작(1226E)이 뒤따른다.
- 단일 루트 스크램블링 암호화의 역-도 83l의 단일 루트 언스크램블링 해독 동작(1217G)으로서 기호로 도시된 "단일 루트 언스크램블링 해독"은 스크램블된 암호화된 패킷을, 그 본래의 언스크램블된 암호화되지 않은 상태로 되돌리기 위해 사용된다. 이 기능은 정크 삽입 및 삭제를 위해 그리고 패킷 파싱을 위해 사용되는 단일 루트 혼합 동작(1061)이 뒤따르는 해독 언스크램블링 동작(1226D)의 직렬 조합을 포함한다.
- 종래의 단일 루트 해독, 언스크램블링, 스크램블링, 및 암호화 기능을 순차적으로 수행함으로써, 도 83m에 단일 루트 재 패킷팅 동작(1216E)으로서 개략적으로 그리고 기호로 도시된 "단일 루트 재패킷팅"은 단일 경로 루트에서 패킷 스크램블링 및 암호화를 리프레시하는 데 유용하다.
- 도 83n에 단일 입력 다중 출력 동작(1216F)으로서 개략적으로 그리고 기호로 도시된 "단일 입력, 다중 출력 SDNP 게이트웨이"라고도 알려진 "메시형 SDNP 게이트웨이 입력"은, 패킷이 이미 스크램블 또는 암호화되었는지의 여부와는 관계없이, 다중 루트 또는 메시형 전송을 위해, 단일 입력이 분리되어 다중 출력으로 라우팅된다. 이 기능은, 그 패킷 분할 동작의 필수 기능으로서 정크 및 파싱 기능(1053, 1052)을 포함하여, SDNP 게이트웨이에서 언스크램블된 암호화되지 않은 메시형 라우팅을 시작하는 데 유용하다.
- 이전의 메시형 게이트웨이 입력 기능의 역은 도 83o에 다중 입력 단일 출력 동작(1216G)으로서 개략적으로 그리고 기호로 도시된 "다중 입력 단일 출력 SDNP게이트웨이"라고도 알려진 "메시형 패킷 게이트웨이 출력"이며, 여기서 패킷이 스크램블되거나 암호화되는지의 여부와 관계없이 단일 입력을 분할하여 다중 경로 또는 메시형 전송을 위해 다중 출력으로 라우팅한다. 이 기능은 라스트 마일 통신을 위해 또는 클라우드-클라우드 홉, 즉 SDNP 메시형 라우팅을 결론짓기 위해 SDNP 게이트웨이에서 메시지의 구성요소 패킷을 재수집하는 데 사용되며, 선택적으로 패킷 및 그 혼합 동작의 완전한 특징으로서 정크 및 파싱 기능(1053, 1052)을 포함한다.
- "스크램블된 SDNP 게이트웨이 입력"은 도 83p의 단일 입력 다중 출력 스크램블링 동작(1217H)로서 기호로 도시되어 있으며, 여기서 단일 입력은 각각의 출력을 위해 분할되어 별도로 스크램블되며, 그 후 패킷이 이미 암호화되었는지의 여부와는 관계없이 다중 루트 또는 메시형 전송을 위해 다중 출력으로 라우팅된다. 이 기능은 그 분할 동작의 완전한 특징으로서 선택적인 정크 및 파싱 기능(도시되지 않음)을 포함하는 SDNP 게이트웨이에서 스크램블된 메시형 라우팅을 시작하는 데 유용하다.
- 이전의 스크램블된 게이트웨이 입력 기능의 역은 도 83p에 다중 입력 단일 출력 언스크램블링 동작(1217J)으로서 기호로 도시된 "언스크램블링 다중 입력 단일 출력 SDNP게이트웨이"로서 알려진 "언스크램블된 SDNP게이트웨이 출력"이며, 여기서 다중 메시형 입력은 패킷이 암호화되었는지의 여부와는 관계없이 독립적으로 먼저 언스크램블되고, 그 후 혼합되어 단일 출력 또는 클라이언트로 라우팅된다. 이 기능은 라스트 마일 통신을 위해 또는 클라우드-클라우드 홉을 위해 SDNP 게이트웨이에서 메시지의 구성요소 패킷을 재수집하고 언스크램블하도록, 즉 SDNP 메시형 라우팅을 결론짓고 또한 그 패킷 분할 동작의 완전한 특징으로서 정크 및 파싱 기능(도시되지 않음)을 포함하는 데 사용된다.
- "암호화된 SDNP 게이트웨이 입력"은 도 83q에 단일 입력 다중 출력 암호화 동작(1217K)로 기호로 도시되어 있으며, 여기서 단일 입력은 패킷이 이미 스크램블되었는지의 여부와는 관계없이 다중 루트 또는 메시형 전송을 위해 분할되고, 각각의 출력을 위해 독립적으로 암호화되며, 그 후 다중 출력으로 라우팅된다. 이 기능은 분할 동작의 완전한 기능으로서 선택적인 정크 및 파싱 기능(도시되지 않음)을 포함하는 SDNP 게이트웨이에서 암호화된 메시형 라우팅을 시작하는 데 유용하다.
- 이전의 암호화된 게이트웨이 입력 기능의 역은 도 83q에 다중 입력 단일 출력 해독 동작(1217L)으로 기호로 표시된 "해독된 SDNP 게이트웨이 출력"이며, 여기서 다중 메시형 입력은 각각의 출력을 위해 먼저 독립적으로 해독되고, 해독되어, 그 후 패킷이 스크램블되었는지의 여부와는 관계없이 단일의 출력 또는 클라이언트로 라우팅된다. 이 기능은 라스트 마일 통신 또는 클라우드-클라우드 홉을 위해 SDNP 게이트웨이에서 메시지의 구성요소 패킷을 재수집하고 해독하도록, 즉 그 패킷 혼합 동작의 완전한 특징으로서 선택적인 정크 및 파싱 기능(도시되지 않음)을 포함하는 SDNP 메시형 라우팅을 종결하는 데 사용된다.
- "스크램블된 암호화된 SDNP 게이트웨이 입력"은 도 83r에 단일 입력 다중 출력 스크램블링 암호화 동작(1217M)으로서 기호로 도시되어 있으며, 여기서 단일 입력은 분리되며, 그 후 스크램블되고 이어서 각각의 출력을 위해 독립적으로 암호화되며, 그리고 마지막으로 다중 루트 또는 메시형 전송을 위해 다중 출력으로 라우팅된다. 이 기능은 분할 동작의 완전한 기능으로서 선택적인 정크 및 파싱 기능(도시되지 않음)을 포함하는 SDNP 게이트웨이에서 암호화된 메시형 라우팅을 시작하는 데 유용하다.
- 이전의 스크램블된 암호화된 게이트웨이 입력 기능의 역은 도 83r에 다중 입력 단일 출력 언스크램블링-해독 동착(1217N)으로서 기호로 도시된 "언스크램블된 해독된 SDNP 게이트웨이 출력"이며, 여기서 다중 메시형 입력은 먼저 해독되고, 그 후 각각의 출력을 위해 독립적으로 언스크램블되며, 그 후 혼합되어, 단일의 출력 또는 클라이언트에 라우팅된다. 이 기능은 라스트 마일 통신 또는 클라우드-클라우드 홉을 위해 SDNP 게이트웨이에서 메시지의 구성요소 패킷을 재수집, 해독 및 언스크램블하는 데, 즉 그 패킷 혼합 동작의 완전한 특징으로서 선택적인 정크 및 파싱 기능(도시되지 않음)을 포함하는 SDNP 메시형 라우팅을 종결하는 데 사용된다.
- "메시형 재스크램블링"은 도 83s에 다중 입력 다중 출력 언스크램블링-스크램블링 동작(1216A)으로서 기호로 도시되어 있으며, 여기서 다중 루트 또는 메시형 입력은 패킷이 암호화되어 긴 데이터 패킷 또는 등가물에 병합되어, 적용 가능하다면 정크 패킷을 제거하는지의 여부와는 관계없이, 각각의 입력을 위해 먼저 독립적으로 언스크램블된다. 상기 긴 데이터 패킷은 다음에 새로운 다중 데이터 패킷으로 분할되어, 적용 가능하다면 정크 데이터를 삽입한다. 그 후, 각각의 데이터 패킷은 독립적으로 스크램블되고, 마지막으로 다중 루트 또는 메시형 전송을 위해 다중 출력으로 라우팅된다. 이 기능은 새로운 상태 또는 시간 조건으로 스크램블링을 리프레시하는 데, 즉 데이터 패킷이 SDNP 클라우드를 통과할 때 데이터 패킷 "재스크램블링"을 촉진시키는 데 사용된다.
- "메시 재암호화"는 도 83s에 다중 입력 다중 출력 해독-암호화 동작(1216B)으로서 기호로 도시되어 있으며, 여기서 다중 루트 또는 메시형 입력은 패킷이 스크램블되었는지, 긴 데이터 패킷 또는 등가물로 병합되어, 적용 가능하다면 정크 패킷을 제거하였는지의 여부와는 관계없이, 각각의 입력에 대해 먼저 독립적으로 해독된다. 상기 긴 데이터 패킷은 적용 가능하다면 정크 데이터를 삽입하는 새로운 다중 데이터 패킷으로 분할된다. 그 후 각각의 데이터 패킷은 독립적으로 암호화되고, 다중 루트 또는 메시형 전송을 위해 최종적으로 다중 출력으로 라우팅된다. 이 기능은 데이터 패킷이 SDNP 클라우드를 통과할 때, 새로운 상태 또는 시간 조건으로 암호화를 리프레시하는 데, 즉 데이터 패킷 "재암호화"를 촉진시키는 데 사용된다.
- "메시형 재패킷팅"은 이미 도 83a에 개략적으로 도시되었고 또한 도 83b에 기호 형태로 도시되어 있으며, 여기서 다중 루트 또는 메시형 입력이 먼저 해독되고, 이어서 각 입력을 위해 독립적으로 언스클램블되며, 그 후 긴 데이터 패킷 또는 등가물로 병합되어, 적용 가능하다면 정크 패킷을 제거한다. 일 실시예에 있어서, 상기 긴 패킷은 암호화되지 않은 평문 또는 클라이언트로부터 전송된 데이터의 포맷을 포함해야 한다. 그 후, 상기 긴 데이터 패킷은 적용 가능하다면 정크 데이터를 삽입하는 새로운 다중 데이터 패킷으로 분할된다. 그 후, 각 데이터 패킷은 독립적으로 스크램블되고, 암호화되며, 그리고 마지막으로 다중 루트 또는 메시형 전송을 위해 다중 출력으로 라우팅된다. 이 기능은 패킷이 SDNP 클라우드를 횡단할 때 스크램블링과 암호화 모두를 새로운 상태 또는 시간 조건으로 리프레시하는 데, 즉 데이터 패킷 "리패킷팅"을 촉진시키는 데 사용된다.
상기 선호는 기재된 SDNP 미디어 노드가 사용될 수 있는 가능한 순열 및 조합을 제한하는 것으로 의도되지 않는다. 예를 들어, 입력 및 출력 채널의 수, 즉 임의의 지정 SDNP 미디어 노드에 연결된 SDNP 미디어 노드의 수는, 디바이스당 1 내지 수십 개의 연결로 변할 수 있다. 편의상 4개의 입력 및 출력이 표시된다. 신호 흐름을 나타내는 개략도인 도 84a는 SDNP 통신 소프트웨어를 모두 실행하는 컴퓨터 서버(1220B, 1220J, 1220H)를 각각 포함하는 미디어 노드(Ma,b, Ma,j, Ma,h)와 같은 임의의 노드 사이의 통신을 도시하고 있다. 이 도면은 임의의 2개의 미디어 노드 사이의 2개의 연결-하나는 미디어 노드, 예를 들어 Ma,b의 출력으로부터 다른 미디어 노드, 예를 들어 Ma,j의 입력으로의 연결, 및 마지막으로 명명된 미디어 노드(Ma,j)의 출력으로부터 이전 미디어 노드(Ma,b)의 입력으로의 제2 연결을 포함한다. 이런 묘사는 통신 미디어 노드 사이에 실제로 단일 광섬유, 동축 링크, 꼬인 쌍, 이더넷 또는 위성 링크를 포함할 수 있는 PHY 또는 데이터 링크 계층이 아니라 계층 3 네트워크 연결을 나타낸다는 것을 의미한다. 상기 표현이 네트워크 레벨이기 때문에, 전기 피드백, 경쟁 조건, 또는 디바이스의 출력을 다른 디바이스의 입력에 연결하고 또한 그 디바이스의 출력을 이전 디바이스의 입력에 연결함으로써 생성되는 불안정성의 위험이 없으며, 즉 도식적인 네트워크는 전기 피드백 네트워크를 설명하지 않는다.
도 84b에 도시된 바와 같이, 본 발명에 따른 통신 네트워크 또는 SDNP 클라우드(1114)를 실현하기 위해, SDNP 미디어 노드(1215)를 실행하도록 소프트웨어를 각각 동작시키는 서버(1220B, 1220D, 1220F, 1220H, 1220J, 1220S, 1220Q)를 포함하는 컴퓨터 서버의 어레이는 대응하는 미디어 노드(Ma,b, Ma,d, Ma,f, Ma,h, Ma,j, Ma,s, Ma,q)를 갖는 보안 네트워크를 생성하며, 이는 더 큰 보안 클라우드의 노드의 일부를 나타낼 수 있다.
상기 컴퓨터 서버는 SDNP 미디어 노드(1215)에서 실행되는 소프트웨어가 하드웨어의 OS와 일치하는 실행 가능한 코드를 포함하는 한, 반드시 동일한 운영 체제(OS)를 동작시킬 필요는 없다. 실행 가능한 코드는 지정한 애플리케이션 기능을 수행하는 주어진 하드웨어 플랫폼에서 동작하는 컴퓨터 소프트웨어이다. 실행 가능한 코드는 "소스 코드"를 컴파일링함으로써 생성된다. 소스 코드가 논리적으로 구성된 순차적 동작, 알고리즘 및 명령으로 인식될 수 있더라도, 일단 소스 코드가 실행 가능한 코드로 변환되었다면, 프로그램의 실제 기능성은 인식하기가 어렵거나 불가능하다. 프로세스는 단방향이며, 소스 코드는 실행 가능한 코드를 생성할 수 있지만 그러나 실행 가능한 코드는 이것이 오는 곳으로부터 소스 코드를 결정하는 데 사용될 수 없다. 이는 해커가 실제 코드를 역공학(reverse engineer)할 수 있도록 운영 체제의 도난을 방지하는 것이 중요하다.
소스 코드는 실행 불가능한데, 그 이유는 지정 운영 체제에서 실행되도록 의도된 기계 코드가 아니라, 프로그래머가 사용하는 언어 및 구문이기 때문이다. 컴파일 동작 중, 생성된 상기 실행 가능한 코드는 하나의 운영 체제, 즉 iOS, 안드로이드, 윈도우즈 9, 윈도우즈 10, 맥OS에 특정하다. 하나의 운영 체제를 위한 실행 가능한 코드는 다른 운영 체제에서는 실행되지 않는다. 그러나 소스 코드는 실행 가능한 코드를 생성하는 데 사용될 수 있다. 따라서 SDNP 네트워크의 소스 코드는 SDNP 실행 가능한 코드를 동작하는 네트워크 운영자가 아니라, 해당 소스 코드 개발자만 사용할 수 있다.
본 출원의 배경 설명 부분에 기재된 이더넷, WiFi, 4G 및 DOCSIS와 같은 표준화된 프로토콜을 따르는 네트워크 연결은, 그 제조업체 또는 OS와 완전히 관련 없는 방식으로 디바이스를 상호 연결하는 공통 프레임워크를 제공한다. 동작 시, 네트워크 연결은 컴퓨터의 OS 정상에서 동작하는 SDNP 소프트웨어로 또는 SDNP 소프트웨어로부터 이를 라우팅하는 컴퓨터 서버의 운영 체제로 또는 운영 체제로 데이터 패킷을 전달하고 전송한다. 이런 방식으로, SDNP 미디어 노드 기반의 소프트스위치 통신 기능은 제조자와는 관계없이 임의의 디바이스에서 실현될 수 있으며, 또한 유닉스(UNIX), 리눅스(LINUX), 맥OS 10, 윈도우즈 7, 윈도우즈 8을 포함하는 임의의 주요 지원 운영 시스템과 호환 가능할 수 있다.
다른 원칙은 SDNP 실현 클라우드는 중앙 제어 지점이 없고, 패키지의 라우팅을 결정하는 단일 디바이스가 없고, 송신되는 데이터 패킷의 전송 경로, 전송 경로, 전송 방법, 혼합, 분할, 스크램블 및 암호화되는 방법 등에 대한 완전한 지식이 없다는 점이다. 심지어 네트워크 운영자조차도 네트워크의 데이터 트래픽에 대한 완전한 그림을 갖고 있지 않다. 기재된 바와 같이, 도 84b는 동일한 클라우드에서 컴퓨터 네트워크를 나타내고 있다. 동일한 클라우드에 있다는 의미는 주관적이고 임의적인 용어이며, 기재된 발명의 보편성을 제한하려는 것은 아니다. 미디어 노드[Mb,b, Mb,e, Mb,f, Mb,g, Mb,j, Mb,s, Mb,t(도시 생략)]를 포함하는 제2 클라우드는 상이한 지리적 영역을 포함할 수 있거나, 또는 상이한 서비스 제공자에 의해 호스트될 수 있다. 예를 들어, 아마존은 "클라우드 A"를 호스트할 수 있고, 마이크로소프트는 "클라우드 B"를 호스트하고, 개인 회사 또는 ISP는 "클라우드 C"를 호스트할 수 있다. 일반적으로 노드 내 연결성은 클라우드-클라우드 연결보다 클라우드 내에서 더욱 크고 더욱 밀집되어 있으며, 이는 번호가 더 적으며, 또한 네트워크 어드레스 변환기(NAT)에 의해 할당된 임시 패킷 라우팅 번호를 사용하기보다는, 통신하기 위해 실제 인터넷 호환 IP 어드레스를 사용할 것을 요구한다.
임의의 주어진 SDNP에 의해 수행되는 기능을 표현하는 것과 관련하여, 기능을 수행하거나 변경되지 않은 채로 데이터를 전달하는, 가상 스위치를 갖는 기능을 포함하거나 우회하는 동일한 원리가 전술한 논의에 또는 스크램블링 및 암호화 기능이 순서대로 스와핑되고, 즉 해독하기 전에 언스크램블링을 수행하고, 스크램블링하기 전에 암호화를 수행하는 대안적인 실시예에 동일하게 적용할 수 있다. 간략함을 위해, 이들 대안적인 데이터 흐름은 역 동작이 반대 동작 시컨스에서 수행되는 한 시컨스가 변경될 수 있다는 것을 이해하여 별도로 도시되지 않는다. 데이터 패킷 처리가 소프트웨어에서 발생하기 때문에, 이 시컨스는 알고리즘의 시컨스를 즉시 또는 주기적으로, 예를 들어 매월, 매일, 매시간 또는 호출별, 시간별, 또는 상태별로 변경함으로써 간단하게 변경될 수 있다.
전술한 바와 같이, 임의의 스크램블링, 암호화 및 혼합 시컨스가 사용될 수 있어서, 본래의 데이터는 정확하게 동일한 데이터 세트 상에서 역순으로 정확하게 복원된다. 언스크램블링, 해독 또는 재혼합 전에 변경을 취소하지 않고 동작 사이의 콘텐트를 변경하는 것은, 취소할 수 없는 데이터 손실 및 영구적인 데이터 손상으로 나타날 것이다. 즉, 패킷을 한 번 이상 스크램블되거나 또는 중첩된 순서로 두 번 이상 암호화할 수 있어서, 본래 데이터를 복구하기 위해 역순 시컨스 규칙을 따른다. 예를 들어, 클라이언트 애플리케이션은 암호문을 생성하기 위해 그 자신의 고유한 방법을 사용하여 메시지를 암호화할 수 있으며, SDNP 게이트웨이에 들어감에 따라, 게이트웨이 미디어 노드는 네트워크 전송을 위해 패킷을 두 번 암호화할 수 있다. 이 방법이 동작할 것이므로, 최종 게이트웨이는 클라이언트 애플리케이션 해독이 발생하기 전에 전체 패킷별로 네트워크의 암호화를 해독한다.
클라이언트 기반 암호화의 경우 외에, 본 발명에 따른 일 실시예에서 데이터 손상 및 패킷 손실의 위험을 피하기 위해, 이하의 지침들이 SDNP 기반 통신을 실행하는 데 유익하다.
- SDNP 패킷 스크램블링은 클라이언트의 SDNP 지원 애플리케이션에서 또는 대안적으로 SDNP 미디어 노드 게이트웨이에서 SDNP 클라우드에 들어갈 때 수행되어야 한다.
- 이상적으로, SDNP 암호화는 2개의 SDNP 미디어 노드 사이의 모든 홉에서 발생해야 하며, 즉 데이터 패킷은 라우팅 전에 암호화되고, 다음 SDNP 미디어 노드에 즉시 입력되어 해독된다.
- 적어도, 라스트 마일 통신에 대해 또는 클라우드-클라우드 홉에 대해 데이터 패킷이 SDNP 클라우드에 들어가거나 나갈 때마다 재스크램블이 발생해야 한다. 데이터 패킷이 SDNP 암호화되었다면, 언스크램블되기 전에 해독되어야 하며, 그 후 다시 암호화되기 전에 스크램블되어야 한다.
- 혼합 전에, 들어오는 데이터 패킷의 암호를 해독하고 언스크램블하는 것이 바람직하다. 혼합된 긴 패킷의 해독 및 언스크램블링은 데이터 손상으로 나타날 수 있다. 마찬가지로, 분할 후, 데이터를 스크램블링하고 암호화하는 것이 바람직하다. 혼합된 긴 패킷의 해독 및 스크램블링은 데이터 손상으로 나타날 수 있다.
- 정크 패킷은 해독 및 언스크램블링 후에도 그러나 혼합 전에, 들어오는 데이터 패킷으로부터 제거되어야 한다. 혼합된 긴 패킷 상의 정크 삭제는 데이터 손상으로 나타날 수 있다. 마찬가지로, 분할 후 그러나 스크램블링 및 암호화 전에, 정크 데이터를 삽입하는 것이 바람직하다. 혼합된 긴 패킷 상의 정크 삽입은 데이터 손상으로 나타날 수 있다.
- 사용자 애플리케이션 암호화를 제외하고, 재스크램블링(즉, 언스크램블링 후 스크램블링)은 암호화된 데이터 상에 수행되면 안 된다.
- 정크 데이터 삽입은 용이한 삽입 및 제거를 위해 일관된 방식으로 수행되어야 한다.
- 들어오는 데이터 패킷은 암호화 및 스크램블링이 발생된 시간, 상태 및 알고리즘에 따라 해독되고 언스크램블되어야 한다. 나가는 데이터 패킷은 현재 시간, 관련 상태 및 관련 알고리즘에 따라 암호화되고 스크램블되어야 한다.
- 평문 패킷은 미디어 노드 내에서만 재생성되는 것이 바람직하다. 모든 패킷은 이들이 미디어 노드 사이에서 전송될 동안, 스크램블, 암호화, 혼합, 분할 및/또는 정크 데이터 세그먼트된다.
상기 방법이 본 발명에 따른 가능한 방법을 나타내지만, 이들은 SDNP 기능의 가능한 조합 또는 순서를 제한하는 것으로 의도되지 않는다. 예를 들어, 암호화된 패키지는 해독 전 동일한 데이터 패킷이 언스크램블되는 한 후속해서 스크램블될 수 있다.
일 실행에 있어서, 스크램블링은 클라이언트의 SDNP 애플리케이션 내에서만 수행되고, SDNP 클라우드의 미디어 노드에서는 수행되지 않는다. 이러한 경우에, 안전한 노드 간 통신은 도 84c에 도시된 바와 같이 순전히 암호화 및 해독의 시컨스이며, 여기서 분할 동작(1106), 암호화 동작(1225A), 혼합 동작(1089), 및 해독 동작(1225B)을 포함하는 미디어 노드(Ma,h)의 SDNP 기능적 구성요소가 명쾌하게 도시되어 있는 반면에, SDNP 미디어 노드(Ma,f, Ma,j)는 SDNP 미디어 노드 기능 메시형 재암호화(1216B)를 기호로만 수행하는 것으로 도시되어 있다.
동작 시, 다른 미디어 노드(도시되지 않음)로부터 미디어 노드(Ma,j)로 들어오는 데이터는 먼저 미디어 노드(Ma,h)의 입력 중 하나에서 해독 동작(1225B)으로 지향되며, 여기서 이들이 동일한 시간에 도달하였다면, 패킷은 다른 해독 동작(1225B)에 의해 처리된 독립적으로 미디어 노드(Ma,f)로부터 오는 데이터 패킷과 조합된다. 일단 혼합되었다면, 데이터 패킷은 분할 동작(1106)에 의해 실행되는 분할 알고리즘에 기초하여, 상이한 목적지와의 새로운 그리고 상이한 조합으로 분할된다. 그 후, 개별적인 출력은 개별 암호화 동작(1225A)에 의해 독립적으로 암호화되고, 그 후 미디어 노드(Ma,f, Ma,j)로 그리고 네트워크의 다른 미디어 노드 상으로 지향된다.
이 라우팅 중, 혼합 동작(1089)과 분할 동작(1106) 사이에 순간적으로 존재하는 긴 패킷은 실제로 동일한 대화로부터 데이터 패킷을 포함할 수 있으며, 일부는 미디어 노드(Ma,f)로부터 미디어 노드(Ma,j)를 통해 미디어 노드(Ma,j)로 이동하고, 다른 데이터 패킷은 미디어 노드(Ma,j)로부터 미디어 노드(Ma,h)를 통해 미디어 노드(Ma,f)로 동시에 그러나 다른 방향으로 이동한다. 본 발명에서 나중에 상세히 기재되는, 본 발명에 따라 SDNP 네트워크에서 이용 가능한 정확한 라우팅 제어 때문에, 긴 데이터 패킷은 임의의 주어진 시간에, 관련된 그리고 관련없는 콘텐트, 심지어 반대 방향으로 가는 동일한 전이중 대화로부터 데이터 또는 사운드 스니펫의 임의의 조합을 포함할 수 있다. 데이터가 동시에 도착하지 않았다면, 그 후 데이터 패킷은 동일한 긴 패킷을 결코 공유하지 않고 반대 방향으로 미디어 노드를 순차적으로 통과한다. 두 경우에 있어서, 전이중 모드에서 다중 대화를 운반하는 SDNP 미디어 노드에서 상호 작용이나 성능 저하는 없다.
처음에는 이 독특한 형태의 네트워크 통신이 혼란스러울 수 있지만, 도 84d에 도시된 방식으로 데이터 전송을 나타내는 것은 미디어 노드가 전이중 통신의 양방향을 동시에 지원하는 경우조차도 SDNP 미디어 노드에서 데이터 통신의 단순함을 신속하게 나타낸다. 예를 들어, 음영 라인으로 도시된, 미디어 노드(Ma,j)에 진입하는 데이터 패킷은 먼저 해독(1032)을 통과하고, 그 후 혼합 동작(1089), 분할 동작(1106), 암호화 동작(1026), 마지막으로 미디어 노드(Ma,h)에 들어가고, 새로 암호화된 상태로 미디어 노드(Ma,h)에 들어가지만, 그러나 그 후 새로운 시간 및 상태에서 동일한 시컨스를 반복한다. 마지막으로, 미디어 노드(Ma,h)로부터의 데이터 패킷은 미디어 노드(Ma,f)에 들어가고, 여기서 이들은 해독, 혼합, 분할 및 재암호화되고, 마지막으로 클라우드의 다음 미디어 노드로 송신된다. 동시에, 음영이 없는 선으로 도시된 다른 방향을 통과하는 데이터는 미디어 노드(Ma,f)에 들어가고, 여기서 이것은 해독, 혼합, 분할 및 재암호화되고, 그 후 미디어 노드(Ma,h)로 전달되고, 마지막으로 미디어 노드(Ma,j)를 통해 SDNP 클라우드의 다른 미디어 노드로 송신된다.
라스트 마일 통신 - 클라이언트와 SDNP 클라우드 사이의 데이터 링크는 여기에서는 라스트 마일 통신으로 기재된다. "라스트 마일"이라는 용어는 발신자와 클라우드 사이의 연결인 "퍼스트 마일"을 포함하는데, 그 이유는 모든 통신은 항상 송신된 메시지와 응답 또는 가능하기로는 전이중 대화와 관련된 양방향이기 때문이다. 따라서 여기에서 사용되는 바와 같이 "라스트 마일"이라는 용어는 클라이언트가 전화를 시작했는지 또는 호출된 사람(수신자)인지의 여부와는 관계없이 클라이언트와 SDNP 클라우드 사이의 모든 연결을 의미한다. 라스트 마일 연결의 예가 도 85a에 도시되어 있으며, 여기서 SDNP 클라우드(1114)는 보안 클라우드의 노드 중 적어도 일부를 함께 나타내는 SDNP 미디어 노드(Ma,b, Ma,d, Ma,f, Ma,h, Ma,q)로서 동작하는 소프트웨어를 실행하는 컴퓨터 서버(1118)의 네트워크를 포함한다. 특히, 도시된 예에서, SDNP 미디어 노드(Ma,h)를 촉진시키는 컴퓨터 서버(1220H)는 LTE 기지국(17)에 직접 또는 간접적으로 연결된 SDNP 게이트웨이 미디어 노드로서 동작하며, 또한 클라이언트로서 셀룰러 타워(18) 및 무선 링크(13)를 통해 휴대폰(32)에 연결된다. 여기에 사용되는 바와 같이, 용어 "게이트웨이 노드" 또는 "게이트웨이 미디어 노드"는 SDNP 네트워크 외부의 노드, 전형적으로는 휴대폰 또는 컴퓨터와 같은 클라이언트 디바이스에 연결하는 미디어 노드를 지칭하며, 이 경우 게이트웨이 노드와 클라이언트 디바이스 사이의 연결은 "라스트 마일" 연결이다.
보안 SDNP 게이트웨이 노드가 비 보안 라스트 마일에 연결되는 예가 도 85b에 도시되어 있으며, 예를 들어 SDNP 게이트웨이 노드는 이에 설치된 SDNP 애플리케이션을 갖지 않는 전화기에 연결된다. 도시된 바와 같이, 휴대폰(32)은 무선 링크(28)에 의해 셀 타워(18)에 연결되며, 이는 휴대폰(32)으로부터 데이터 패킷을 송신 및 수신하고 또한 LTE 기지국(17)을 사용하여 이더넷, 광섬유, 동축 케이블, 구리 케이블 등과 같은 유선 통신으로 이들을 변환한다. 데이터 패킷이 단일 PHY 계층 1 연결, 유선, 케이블, 라디오 또는 위성 링크 상에서 양방향으로 운반되더라도, 데이터 흐름은 휴대폰(32)으로부터 SDNP 미디어 노드(Ma,h)로, 그리고 그 역으로 송신되는 패킷에 대해 별도로 표현된다. 도시된 바와 같이, 상기 라스트 마일은 휴대폰에서 사용되는 애플리케이션이 암호화가 구축되어 있고 또한 호출된 사람이 동일한 암호화 기능을 갖는 동일한 애플리케이션을 사용하지 않는 한, 라스트 마일은 안전하지 않다.
동작 시, 휴대폰(32)으로부터 SDNP 게이트웨이 미디어 노드(Ma,h)로 송신된 개방형 데이터 패킷은 해독되지도 그리고 언스크램블되지도 않는데, 그 이유는 이들 기능이 가능하지 않은, 즉 단락되고 따라서 도시되지 않기 때문이다. 대신에, 들어오는 데이터 패킷은 믹서 동작(1089)을 직접적으로 통과하여 다른 패킷과 혼합되며, 그 후 분할 동작(1106)을 사용하여 메시형 전송을 위해 이들을 다중 출력으로 분할한다. 이들 출력의 각각은 그 후 전송 전에 스크램블링 동작(926) 및 암호화 동작(1026)을 사용하여 보안 된다. 예로서 도시된 하나의 출력은 서버(1220F)에서 미디어 노드(Ma,f)로 라우팅된다. 메시지는 이미 기재된 바와 같이 클라우드 내 통신을 위해 다시 미디어 노드(Ma,f)로 처리될 수 있고, 또한 컴퓨터 서버(1220J)에서 다른 미디어 노드, 예를 들어, 미디어 노드(Ma,j)로 앞으로 송신된다.
클라우드로부터 휴대폰(32)으로 서버(1220F)의 미디어 노드(Ma,f)로부터 그리고 다른 미디어 노드로부터의 데이터 흐름은 해독 동작(1032)으로 시작하는 역순으로 처리되어, 해독 동작(1032)으로 시작하여, 언스크램블링 동작(928)을 사용하여 언스크램블되고, 그 후 혼합 동작(1089)에 의해 일시적 긴 패킷 내로 다른 들어오는 데이터와 혼합된다. 그 후, 상기 긴 패킷은 분할 동작(1106)에 의해 분할되어, 네트워크에서 일부 패킷을 앞으로 지향시키고 또한 전송될 패킷을 휴대폰(32)으로 분리한다. 이들 패킷은 함께 송신되거나 또는 파싱될 수 있고, 또한 별도의 데이터 패킷에서 LTE 기지국(17)으로 그 후 휴대폰(32)으로 앞으로 다시 연속적으로 송신된다.
전술한 바와 같이, 네트워크를 횡단하는 데이터 패킷은 반복적으로 재암호화되고 재스크램블될 수 있다. 대안적으로, 일 실시예에 있어서, 데이터 패킷은 클라우드 전체에 걸쳐 재스크램블링 없이 스크램블된 상태로 존재하지만, 그러나 각 미디어 노드에서 반복적으로 재암호화될 수 있다. 이러한 스크램블-1회 언스크램블-1회 시스템에 있어서, 스크램블링은 게이트웨이 노드에서 발생하며, 여기서 패킷은 클라우드에 들어가고, 언스크램블링은 상기 패킷이 클라우드를 떠나는 게이트웨이 노드에서, 즉 퍼스트 마일 및 라스트 마일에 연결된 게이트웨이 노드에서 발생한다. 전술한 바와 같이, 퍼스트 마일 또는 라스트 마일에 연결된 미디어 노드는 게이트웨이 노드라고 지칭될 수 있지만, 실제로 이는 클라우드 내의 다른 미디어 노드와 동일한 SDNP 미디어 노드 소프트웨어 및 기능을 포함하지만, 클라이언트와 접촉하기 위해 상이하게 기능한다.
스크램블-1회 언스크램블-1회를 실행하기 위한 다른 옵션은 소프트웨어를 사용하여 클라이언트 디바이스에 스크램블링을 실행하는 것이다. 도 85c에 도시된 바와 같이, 컴퓨터 서버(1220F)에서 휴대폰(32)과 SDNP 미디어 노드(Ma,f) 사이의 연결에서, SDNP 미디어 노드(Ma,h)는 클라이언트와 SDNP 클라우드 사이에서 게이트웨이 미디어 노드로서 동작하며, 여기서 SDNP 게이트웨이 미디어 노드(Ma,h)는 혼합 동작(1089), 분할 동작(1106), 암호화 동작(1225A), 스크램블링 동작(1226B), 해독 동작(1225B) 및 언스크램블링 동작(1226A)을 포함한다. 이미 정의된 바와 같이, 임의의 미디어 노드, 즉 M 노드 명칭으로 지정된 통신 노드는 이러한 모든 보안 동작, 즉 혼합 및 분할, 암호화 및 해독, 스크램블링 및 언스크램블링 등의 임의의 조합을 할 수 있다. 동작 시, 데이터 패킷은 SDNP 소프트웨어에 의해 휴대폰(32) 내에서 스크램블되고, 무선 링크(28)에 의해 LTE 타워(18)로 이동하며, 여기서 LTE 기지국(17)은 SDNP 게이트웨이 노드로의 통신을 위해 신호를 이더넷, 광섬유 또는 다른 유선으로 변환한다. 로컬 통신업체에 따라, 이 링크의 일부는 사설 NAT에 대한 트래픽을 포함하거나, 또는 인터넷에 대해 이동하는 데이터를 포함할 수 있다. 그 후, 데이터 패킷은 LTE 기지국(17)으로부터 SDNP 게이트웨이 노드로서 동작하는 SDNP 미디어 노드(Ma,h)로 송신된다.
그 후 들어오는 데이터 패킷은 관통(pass-through) 동작(1216H)으로 라우팅되고, 이어서 혼합 동작(1089)을 사용하여 다른 들어오는 입력 데이터 패킷과 혼합되고, 그 후 분할 동작(1106)에 의해 분할되고, 휴대폰(32)으로부터의 데이터 패킷은 암호화 동작(1225A)을 통해 미디어 노드(Ma,f)로 지향된다. 이러한 방식으로, 클라우드를 횡단하는 데이터는 게이트웨이에 의해 암호화되지만, 그러나 클라이언트의 SDNP 애플리케이션에 의해 스크램블된다. 반대로, SDNP 클라우드로부터의 암호화된 그리고 스크램블된 데이터 트래픽은 미디어 노드(Ma,f)를 통해 라우팅되고, 해독 동작(1225B)을 통과하며, 혼합 동작(1089)에 의해 혼합되고, 분할 동작(1106)에 의해 새로운 패킷으로 분할되고, 그 목적지로서 휴대폰(32)으로 데이터 패킷을 추출하고, 및 관통 동작(1216H)에 의해 수정되지 않은 휴대폰(32)으로 데이터 패킷을 송신하는 단계를 포함한다. 이러한 방식으로, 전체 통신은 종단 간에서 스크램블되지만, 그러나 SDNP 클라우드 내에서만 암호화된다.
전술한 방법에 대한 수정은 라스트 마일과 클라우드 모두에 여전히 스크램블링을 제공하지만, 그러나 라스트 마일 스크램블링은 클라우드에 사용되는 스크램블링과 다르다. 도 85d에 도시된 바와 같이, 컴퓨터 서버(1220F)에서 휴대폰(32)과 SDNP 미디어 노드(Ma,f) 사이의 연결에서, SDNP 미디어 노드(Ma,h)는 클라이언트와 SDNP 클라우드 사이의 게이트웨이 노드로서 동작하며, 여기서 SDNP 미디어 노드(Ma,h)는 혼합 동작(1089), 분할 동작(1106), 스크램블링 및 암호화 동작(1226C), 해독 및 언스크램블링 동작(1226D), 스크램블링 동작(1226B) 및 언스크램블링 동작(1226A)을 포함한다. 동작 시, 데이터 패킷은 SDNP 소프트웨어에 의해 휴대폰(32) 내에서 스크램블되고, 무선 링크(28)에 의해 LTE 타워(18)로 이동하고, LTE 기지국(17)은 신호를 이더넷, 광섬유 또는 다른 유선 통신으로 SDNP 게이트웨이 노드로 변환한다. 로컬 통신업체에 따라, 휴대폰(32)으로부터 LTE 기지국(17)까지의 링크 부분은 사설 NAT 에 대해 트래픽을 포함할 수 있거나 또는 인터넷에 대해 이동하는 데이터를 포함할 수 있다. 그 후, 데이터 패킷은 LTE 기지국(17)으로부터 SDNP 게이트웨이 노드로서 동작하는 SDNP 미디어 노드(Ma,h)로 송신된다.
그 후, 들어오는 데이터 패킷은 혼합 동작(1089)을 사용하여 다른 들어오는 데이터 패킷과 혼합되고, 그 후 분할 동작(1106)에 의해 분할되며, 휴대폰(32)으로부터의 데이터 패킷은 스크램블링 및 암호화 동작(1226C)을 통해 미디어 노드(Ma,f)로 지향된다. 이러한 방식으로, 클라우드를 횡단하는 데이터는 라스트 마일 보안을 위해 클라이언트의 SDNP 애플리케이션에 의해 사용되는 스크램블링과는 상이한 방식으로 게이트웨이 노드에 의해 암호화되고 스크램블된다. 반대로, SDNP 클라우드로부터의 암호화 및 스크램블된 데이터 트래픽은 미디어 노드(Ma,f)를 통해, 해독 및 언스크램블링 동작(1226D)을 통해 라우팅되며, 그 후 혼합 동작(1089)에 의해 혼합되고, 분할 동작(1106)에 의해 새로운 패킷으로 분할되고, 그 목적지로서 휴대폰(32)으로 데이터 패킷을 추출하고, 및 스크램블링 동작(1226B)을 통해 휴대폰(32)에 데이터 패킷을 송신한다. 휴대폰(32)에 들어가는 데이터 패킷은 SDNP 가능 애플리케이션에 의해 언스크램블된다. 이러한 방식으로, 클라우드에서의 통신은 미디어 노드 내에서 암호화되고 스크램블되는 반면에, 라스트 마일은 클라우드 스크램블링과는 다른 방식으로 게이트웨이 노드 및 폰 애플리케이션에 의해 스크램블된다. 전화 내에서 데이터 패킷을 스크램블링 및 언스크램블하는 하나의 중요한 양태는 상태 정보, 숫자 키 또는 클라우드와 클라이언트 사이의 공유 비밀을 통과시키는 데 사용되는 방법이다. 이 주제는 본 발명에서 나중에 논의된다.
단편화된 데이터 전송 - 본 발명에 따라, SDNP 미디어 노드 기능을 수행하기 위해 소프트웨어를 실행하는 컴퓨터 서버의 네트워크는, 패킷 교환형 통신에서 데이터 단편화에 기초하여 광범위한 디바이스에 대한 안전한 글로벌 통신을 촉진시킨다. 도 86에 도시된 바와 같이, SDNP 미디어 노드(Ma,b, Ma,d, Ma,f, Ma,h, Ma,j, Ma,s, Ma,q) 등으로서 동작하기 위해 소프트웨어를 실행하는 컴퓨터 서버의 네트워크를 포함하는 SDNP 클라우드(1114)는 이하를 포함하는 매우 다양한 디바이스 및 클라이언트에 연결될 수 있다. 즉, (a) 휴대폰(32) 및 태블릿(33)으로의 무선 링크(28)를 갖는 LTE 기지국(17). 기지국(17)은 임의의 다른 LTE 사용 가능 디바이스에도 링크될 수 있다; (b) 다른 인터넷 기기를 포함하여, 노트북(35) 또는 태블릿, 휴대폰, 전자 판독기(e-readers) 및 다른 WiFi 연결 디바이스에 WiFi 무선 링크(29)를 제공하는 WiFi 안테나(26)를 갖는 공중 WiFi 시스템(100); (c) 광섬유 또는 동축 케이블에 의해 케이블 모뎀(103)에 연결되고 그 후 데스크탑 컴퓨터(36) 또는 홈 WiFi 기지국, 이더넷 연결 디바이스 등에 연결되는 케이블 CMTS(101); (d) 광섬유 또는 동축 케이블에 의해 셋톱박스(TV STB(102))에 그 후 HDTV 39에 연결되는 CMTS(101); (e) 인터넷 라우터(66A, 66B, 66C)로의 유선 연결; (f) 라디오 타워(15)에 의해 워키토키(16B), 기지국(16A) 및 전문 차량(40)에 연결된 TETRA 및 EDAC 와 같은 전문 라디오 네트워크(14); (g) 기업 방송 교환 PBX(8) 및 데스크탑 전화기(9); (h) 통상적인 전화 네트워크 및 POTS로의 PSTN 브릿지(3). 도시된 바와 같이, 임의의 SDNP 미디어 노드는 게이트웨이 노드로서 동작 할 수 있다.
데이터 패킷 전송의 단순화된 예시가 도 87에 도시되어 있으며, 태블릿(33)과 데이터 패킷(1056), 순차적으로 2A, 2B, 2C, 2D, 2E 및 2F를 포함하는 자동차(1255) 사이, 및 노트북(35)과 데이터 패킷(1055), 순차적으로 1A, 1B, 1C, 1D, 1E 및 1F를 포함하는 휴대폰(32) 사이의 SDNP 클라우드 기반 통신의 예를 도시하고 있다. 3A, 3B, 3C, 3D, 3E 및 3F로서 순차적인 다른 데이터 패킷(1250), 4A, 4B, 4C, 4D, 4E, 및 4F로서 순차적인 데이터 패킷(1252), 5A, 5B, 5C, 5D, 5E 및 5F로서 순차적으로 데이터 패킷(1251)도 데이터 패킷(1255, 1256)과 동시에 네트워크를 통해 전송된다. 더 짧은 패킷은, 네트워크 전송의 동적 특성을 나타내기 위해, 전송 중 다양한 시간에 구성요소를 나타내며 디스플레이된다.
도시된 예에 있어서, 모든 패킷의 데이터는 스크램블되므로, 데이터 세그먼트의 시컨스는 무작위 순서로 또는 우연히 오름차순일 수 있다. 하나의 코뮤니케 또는 대화의 데이터 세그먼트는 관련 없는 데이터 세그먼트 사이에 배치될 수도 있다. 실제로 일단 SDNP 클라우드에 들어간 데이터 패킷은 다른 관련 없는 데이터 세그먼트와 혼합되지 않을 가능성은 매우 적다. 실제로 2개의 SDNP 미디어 노드 사이에서 천이하는 임의의 주어진 데이터 패킷에 있어서, 관련 없는 데이터 세그먼트의 혼합 및 이들 패킷의 순서의 스크램블링은 정상적인 조건이다. 많은 수의 대화 또는 데이터 패킷이 클라우드를 동시에 통과하면, 동일한 데이터 패킷에 남아 있는 모든 데이터의 확률이 통계적으로 떨어진다. 충분한 데이터가 없는 경우, 미디어 노드 내에서의 혼합 동작은 정크 데이터를 도입한다. 도시된 바와 같이 무관계 데이터의 다양한 데이터 세그먼트의 포함은 SDNP 전송 중 데이터 패킷에서의 코뮤니케 및 대화의 혼합 원리를 설명하지만, 그러나 관련 없는 데이터 또는 정크 데이터 세그먼트 및 데이터 패킷에 존재하는 필러의 진정한 양 및 주파수를 정확하게 나타내지 않는다.
도 88a는 시간(t0)에서 그리고 Ma,q, Ma,h를 포함하는 다양한 게이트웨이 노드를 통해 네트워크에 들어가는 관련 없는 데이터 패킷(1056 및 1250 내지 1252)으로 시작하는 노트북(35)으로부터 휴대폰(32)로의 대응 상태(990)에서 통신의 시작을 도시하고 있다. 도 88b에 도시된 바와 같이, 시간(t1) 및 대응하는 상태(991)에서, 데이터 패킷(1055)은 여러 개의 컴포넌트 데이터 패킷로 분할된다. 오름차순으로 데이터 세그먼트(1A, 1B)를 포함하지만 관련 없는 데이터 세그먼트와 혼합된 하나의 그러한 데이터 패킷(1261A)은 미디어 노드(Ma,b)로 전송된다. 스크램블된 순서로 그리고 관련 없는 데이터 세그먼트와 혼합된 데이터 세그먼트(1D, 1C, 1F)를 포함하는 데이터 패킷(1261B)은, 미디어 노드(Ma,j)로 라우팅되고, 데이터 세그먼트(1E)를 포함하는 패킷(1261C)은 미디어 노드(Ma,h)로 송신된다.
도 88c에 도시된 바와 같이, 시간(t2) 및 대응하는 상태(992)에서, 데이터는 컴포넌트 데이터 패킷의 새로운 조합으로 분리된다. 특히, 데이터 패킷(1261A)은 새로운 데이터 패킷(1262A, 1262B)으로 분할되며, 여기서 데이터 세그먼트(1A) 및 다른 데이터 세그먼트를 포함하는 데이터 패킷(1262A)이 미디어 노드(Ma,s)로 라우팅된다. 데이터 세그먼트(1B)를 포함하는 데이터 패킷(1262B)은 미디어 노드(Ma,d)로 라우팅된다. 또한 데이터 패킷(1261B)은 구성요소 데이터 패킷(1262C, 1262D)으로 분할되고, 여기서 오름차순으로 데이터 세그먼트(1C, 1F)를 포함하지만 관련 없는 데이터 세그먼트와 혼합되는 데이터 패킷(1262C)은 미디어 노드(Ma,f)로 지향되는 반면에, 데이터 세그먼트(1D)를 포함하는 구성요소 데이터 패킷(1262D)은 미디어 노드(Ma,f)로 지향된다. 반면에, 데이터 세그먼트(1E)를 포함하는 데이터 패킷(1262E)은 단독으로 또는 관련 없는 데이터 패킷(도시되지 않음)과 혼합되어 미디어 노드(Ma,f)로 계속 전송된다.
도 88d에 도시된 바와 같이, 시간(t3) 및 대응하는 상태(993)에서, 데이터 세그먼트(1A)를 포함하는 데이터 패킷(1263A) 및 데이터 세그먼트(1D, 1E)를 포함하는 데이터 패킷(1263C)은, 미디어 노드(Ma,d)로 전송되는 반면에, 데이터 세그먼트(1B, 1C, 1F)는 동일한 미디어 노드(Ma,d)에서 그 도착을 기다린다. 도 88e에 도시된 바와 같이, 시간(t4) 및 대응하는 상태(994)에서, 미디어 노드(Ma,d)는 본래의 데이터 패킷(1055)을 복원하는 데이터 패킷(1263A, 1263B, 1263C)을 혼합하고, 상기 데이터 패킷(1055)을 휴대폰(32)으로 함께 또는 단편적인 형태로 라우팅한다. 노트북(35)과 휴대폰(32) 사이의 데이터 패킷 전송의 요약이 도 88f에 도시되어 있다.
도 89a에 도시된 바와 같이, 노트북(35)과 휴대폰(32) 사이의 통과는 독립적으로 그리고 이와 함께, 태블릿(33)은 데이터 패킷(1056)이 보안 클라우드(1114)에 들어갈 때, 시간(t0) 및 대응하는 상태(990)에서 시작하여 차량(1255)과 통신하고 있다. 도 89b에서, 시간(t1) 및 대응하는 상태(991)에서, 들어오는 데이터 패킷(1056)은 데이터 패킷(1261D, 1261E)으로 분할되며, 여기서 스크램블되지만 동시에 오름차순인 데이터 세그먼트(2B, 2C)를 포함하는 패킷(1261D)은 미디어 노드(Ma,q)로 라우팅되며, 스크램블된 순서로 데이터 세그먼트(2E, 2F, 2A 및 2D)를 포함하는 패킷(1261E)은 미디어 노드(Ma,j)로 라우팅된다.
도 89c에 도시된 바와 같이, 시간(t2) 및 대응하는 상태(992)에서, 데이터 패킷(1261D)은 수정되어 데이터 순서를 스크램블링하고, 다른 소스로부터 데이터 세그먼트를 삽입하여 데이터 패킷(1262F)을 생성한다. 마찬가지로, 데이터 패킷(1261E)은 미디어 노드(Mi,j)에 의해 여러 개의 데이터 패킷(1262G, 1262H, 1262J)으로 분할된다. 데이터 세그먼트(2A)를 포함하는 데이터 패킷(1262J)은 미디어 노드(Ma,f)로 라우팅된다. 관련 없는 다수의 데이터 세그먼트와 혼합된 데이터 세그먼트(2D, 2E)를 포함하는 스크램블된 데이터 패킷(1262H)은 미디어 노드(Ma,d)로 라우팅된다. 또한, 시간(t2)에서, 데이터 세그먼트(2F)를 포함하는 데이터 패킷(1262G)은 미디어 노드(Ma,s)로 라우팅된다.
도 89d에 도시된 바와 같이, 시간(t3) 및 대응하는 상태(993)에서, 오름차순으로 데이터 세그먼트(2B, 2C)를 포함하는 데이터 패킷(1263D)은 노드(Ma,s)로 라우팅되며, 여기서 데이터 세그먼트(2F)를 포함하는 데이터 패킷(1263E)은 다른 패킷을 기다린다. 동시에, 데이터 패킷(1263G)은 오름차순으로 데이터 세그먼트(2D, 2E)를 포함하는 데이터 패킷(1263F)이 대기하는 미디어 노드(Ma,d)로 라우팅된다. 이 조건은 SDNP 네트워크에서 데이터 패킷이 즉시 전송되거나 필요할 경우 일시적으로 보관될 수 있음을 강조한다. 도 89e에 도시된 바와 같이, 시간(t4) 및 대응하는 상태(994)에서, 스크램블된 순서로 데이터 세그먼트(2D, 2A, 2E)를 포함하는 데이터 패킷(1264B)은 미디어 노드(Ma,s)로 라우팅되며, 여기서 데이터 세그먼트(2B, 2C, 2F)를 포함하는 데이터 패킷(1264A)은 대기하고 있다. 도 89f에 도시된 바와 같이, 시간(tf)에서, 최종 데이터 패킷(1056)은 조립되어 자동차(1255)로 라우팅되며, 또는 대안적으로 최종 데이터 패킷(1056)의 모든 데이터 세그먼트 컴포넌트는 혼합되지 않은 형태로 자동차(1255)로 라우팅되고 거기서 재조립된다. 태블릿(33)으로부터 자동차(1255)로의 데이터 패킷(1056)의 라우팅의 요약이 도 89g에 도시되어 있다.
도시된 바와 같이, SDNP 클라우드를 통해 천이하는 데이터 패킷은 상이한 목적지로의 다중 동시 대화를 운반하여, 하나의 SDNP 미디어 노드로부터 다음 SDNP 미디어 노드로 동적으로 변화한다. 관련 없는 데이터 세그먼트의 혼합 또는 분할을 통해 하나의 대화로부터 다른 사람과의 대화로부터 악영향, 데이터 손실 또는 누설(bleeding)이 없다. 예를 들어, 도 87에 도시된 바와 같이, 데이터 패킷(1257)은 휴대폰(32)으로 라우팅된 데이터 세그먼트(1C, 1F), 자동차(1255)로 라우팅된 데이터 세그먼트(2D 및 2E), 및 다른 관련 없는 데이터 세그먼트 및 정크 데이터를 포함하며, 이들 모두는 다른 관련 없는 데이터 세그먼트와의 데이터 패킷의 임시 공유에 영향 받지 않는 상이한 목적지로 전달된다.
더욱이, 데이터 패킷이 완전한 단어, 사운드 또는 대화를 포함하고 있지 않기 때문에, 본 발명에 따라 SDNP 미디어 노드에 의해 사용되는 데이터 단편화 및 메시형 라우팅은 데이터 패킷의 콘텐트를 이해할 수 없게 하고, 중간 공격자를 안전하게 한다. 도 90에 도시된 바와 같이, 시간(t1)에서, 미디어 노드(Ma,j)로 그리고 미디어 노드(Ma,j)로부터의 전송 시 데이터 패킷을 스니핑하는 중간 공격자(630)는 오직 암호문 패킷(1270A, 1271A, 1272A, 1273A)만 본다. 암호화된 파일이 손상되지 않을 것 같은 경우에, 패킷(1270B, 1271B, 1272B, 1273B)의 하부 평문 콘텐트는 데이터 세그먼트의 스크램블된 불완전한 혼합을 포함한다. 이 데이터 조건은, 새로운 데이터 패킷이 동일한 미디어 노드를 통과하기 전에, 불과 몇 초 동안만 지속된다. 스크램블 및 혼합이 없어도, 이것이 재암호화, 재스크램블, 재분할 또는 재패킷되기 전에 데이터 패킷을 해독하는 데 사용할 수 있는 제한 시간은, 슈퍼컴퓨터 공격조차도 효과적이지 않다.
도 91a는 데이터 전송을 나타내기 위한 기반으로서 시간을 사용하는 SDNP 미디어 전송의 동적 특성을 도시하고 있다. 여기에 도시된 데이터는 도 87의 네트워크 그래프에 도시된 덮어씌운 데이터와 동일하다. 시간 기반 표현에 있어서, 태블릿(33)으로부터의 데이터 패킷(1056)은 데이터 패킷(1261A, 1261B, 1261C)으로 분할된다. 시간(t2)에서, 패킷(1261A)은 새로운 데이터 패킷(1262A, 1262B)으로 분할되고, 데이터 패킷(1261B)은 새로운 데이터 패킷(1262C, 1262D)으로 분할되며; 데이터 패킷(1261C)은 내용의 변경 없이 데이터 패킷(1262E)으로 업데이트된다. 시간(t3)에서, 데이터 패킷(1262A)은 내용 변경 없이 데이터 패킷(1263A)으로 업데이트되고, 데이터 패킷(1262D, 1262E)은 데이터 패킷(1263)으로 혼합되는 반면에, 데이터 패킷(1262B, 1262C)은 데이터 패킷(1263B)으로 혼합된다. 시간(t4)에서, 데이터 패킷(1263A, 1263B, 1263C)은 데이터 패킷(1055)을 재구성하도록 혼합된다.
SDNP 데이터 전송은 표 형식으로 표현될 수도 있다. 예를 들어, 도 91b에 도시된 표(1279)는 소스 미디어 노드, 인바운드 패킷, 들어오는 패킷이 암호화된 시간, 들어오는 패킷이 스크램블된 시간, 데이터 패킷은 혼합되어 분할된, 즉 메시된 마지막 시간, 및 결과적인 아웃 바운드 패킷을 나타내는 시간(t3)에서의 데이터 패킷의 처리를 도시하고 있다. 미디어 노드는 들어오는 데이터 패킷에 무엇을 할지, 상기 데이터를 어떻게 재패킷할지, 및 필요하다면 상기 데이터를 어떻게 재암호화 및 재스크램블할지를 알기 위해, 이 정보를 사용한다.
도 91c에 도시된 바와 같이, SDNP 미디어 전송의 동적 특성의 다른 양태는 다른 패킷이 도착하기를 기다리는 미디어 노드에서 패킷을 일시적으로 보유하는 능력이다. 도 87에 이전에 도시된 바와 동일한 데이터를 사용하여, 이 메커니즘은 패킷(1056)의 시간-기반 표현으로 도시되어 있다. 시간(t1)에서, 들어오는 데이터 패킷(1056)은 스크램블되고, 그 후 데이터 세그먼트(2B, 2C)를 포함하는 데이터 패킷(1261D), 및 패킷(2A, 2D, 2E, 2F)을 포함하는 데이터 패킷(1261E)으로 분할된다. 시간(t2)에서, 코뮤니케는 데이터 패킷(1262F, 1262G, 1262H, 1262J)의 4개의 단편으로 분할되고, 후자의 3개는 데이터 패킷(1261E)을, 데이터 세그먼트(2F)를 포함하는 데이터 패킷(1262G)으로, 데이터 세그먼트(2D, 2E)를 포함하는 데이터 패킷(1262H)으로, 및 데이터 세그먼트(2A)를 포함하는 데이터 패킷(1262J)으로 분할한 결과이다. 데이터 세그먼트(2B, 2C)를 포함하는 데이터 패킷(1261D)은 내용을 변경하지 않고, 즉 시간(t2)에서 데이터 패킷(1262F)으로서, 시간(t3)에서 데이터 패킷(1263D)으로서 네트워크를 통해 이동한다. 마찬가지로, 시간(t3)에서, 데이터 세그먼트(2A)를 포함하는 데이터 패킷(1262J)은 데이터 패킷(1263G)으로서 그 내용이 변하지 않고 존재한다.
미디어 노드에서 일시적으로 유지되는 데이터 패킷을 나타내기 위해, 도 91c는 주어진 미디어 노드로부터 동일한 미디어 노드로 연속적인 시간의 증분으로 이동하는 데이터 패킷을 도시하고 있다. 예를 들어, 시간(t3) 및 시간(t4) 사이에서, 그 이전의 데이터 패킷(1262G)과 동일한 것이 데이터 세그먼트 2F를 포함하는 데이터 패킷(1263E)이 미디어 노드(Ma,s)로부터 미디어 노드(Ma,s)로 이동하는 것으로 도시되어 있으며, 즉 상기 패킷은 정지되어 있다. 정지된 데이터 패킷의 상태, 암호화 및 스크램블링이 업데이트된 시간을 반영하도록 변경될 수 있더라도, 시간(t4)에서 소스 미디어 노드(Ma,s)로부터 동일한 목적지 미디어 노드(Ma,s)로 이동하는 데이터 패킷(1263E)의 콘텐트의 개략적인 표현은 이것이 미디어 노드(Ma,s)에 의해 메모리에 유지된다는 것을 의미한다.
마찬가지로, 시간(t3)과 시간(t4) 사이에서, 그 이전의 데이터 패킷(1262H)과 동일한 데이터 세그먼트(2D, 2E)를 포함하는 데이터 패킷(1263F)은 미디어 노드(Ma,d)로부터 미디어 노드(Ma,d)로 이동하도록 도시되어 있으며, 이는 다시 패킷이 정지형이고 또한 일시적으로 메모리에 유지된다는 것을 의미한다. 시간(t4)에서, 입력 데이터 패킷(1263D)은 미디어 노드(Ma,s)에서 시간(t3) 이후에 메모리에 보유된 데이터 패킷(1263E)과 혼합되어, 결합된 데이터 세그먼트(2B, 2C, 2F)를 포함하는 새로운 병합된 데이터 패킷으로 나타난다. 이 새로운 데이터 패킷(1264A)은 미디어 노드(Ma,d)에 보유되어, 더 많은 들어오는 데이터를 기다린다. 반면에, 미디어 노드(Ma,d)에서의 시간(t4)에서, 데이터 패킷(1263F, 1263G)은 혼합되어, 데이터 노드(2A, 2D, 2E)를 포함하는 데이터 패킷(1264B)으로서 미디어 노드(Ma,s)로 라우팅된다. 시간(tf)에서, 들어오는 데이터 패킷(1264B)은 시간(t4) 이후에 미디어 노드(Ma,s)에서 대기하는 고정 데이터 패킷(1264A)과 혼합되어, 자동차(1255)에 송신되는 본래의 데이터 패킷(1056)을 생성한다.
기재된 바와 같이, 본 발명에 따라 도시된 방법에서, 데이터는 SDNP 클라우드를 통해 전송되거나, 또는 처리 전에 들어오는 데이터의 도착을 기다리는 지정한 미디어 노드에서 정지된 상태로 유지될 수 있다.
전송 명령 및 제어 미디어 - 들어오는 데이터 패킷을 처리하는 방법을 노드가 알기 위해서는 정크의 스크램블, 언스크램블, 암호화, 해독, 혼합, 분할, 삽입 및 데이터 패킷의 파싱에 사용되는 알고리즘, 수치 시드, 및 키에 관한 정보를 어떻게든 얻어야만 한다. 이 중요한 정보는 이하를 포함하여, 다양한 수단 또는 그 조합으로 통과될 수 있다.
- SDNP 소프트웨어 설치 또는 개정의 부분으로서 공유 비밀을 미디어 노드로 통과.
- 콘텐츠를 송신하기 전에, 미디어 노드를 통해 제어 데이터 통과.
- 데이터 패킷의 부분으로서 미디어 노드를 통해 제어 데이터 통과.
- 정보를 통신하고 있는 미디어 노드로부터 분리된 데이터 채널을 통해, 예를 들어 미디어 노드와 병렬로 동작하는 네트워크 "시그널링 서버"를 통해, 제어 데이터 통과.
- SDNP 네트워크에 연결된 디바이스의 신원 및 그 대응하는 IP 또는 SDNP 어드레스에 관한 정보를, 시그널링 서버 또는 콘텐트를 운반하는 미디어 노드로서 동작하는 서버로부터 분리된 SDNP 네임 서버에 저장.
예를 들어, 도 92a에 도시된 바와 같이, 시간(t3) 및 대응하는 상태(993)에서, 데이터 세그먼트(1B)를 포함하는 데이터 패킷(1262B), 데이터 세그먼트(1C, 1F)를 포함하는 데이터 패킷(1262C), 및 관련 없는 데이터 세그먼트를 포함하는 데이터 패킷(1262H)은 미디어 노드(Ma,d)에 들어간다. 미디어 노드에 들어갈 때, 명확함을 위해 암호화되지 않은 형태로 도시된 들어오는 데이터 패킷(1262B, 1262C, 1262H)은 먼저 해독 및 언스크램블링 동작에 의해 처리된다. 그 후, 데이터 패킷(1262B, 1262C, 1262H)은 데이터 세그먼트(1B, 1C, 1F)를 포함하는 출력 데이터 패킷(1263B)을 생성하기 위해 디정킹(de-juncking), 즉 정크 비트 제거를 포함하여 혼합된다. 이 동작을 수행하기 위해, 미디어 노드(Ma,d)에 대해 호스트된 컴퓨터 서버(1220D)는 들어오는 데이터 패킷을 생성하는 데 사용된 시간 및 대응 상태에 관한 지정 정보를 먼저 얻어야만 한다. 이 정보는 헤더로서 데이터 패킷에 포함되거나 시그널링 노드 또는 다른 미디어 노드로부터 미디어 노드에 미리 송신될 수 있다. 도 91b의 표에 기재된 바와 같이, 이들 입력 데이터 패킷은 시간(t2)에서 마지막으로 암호화되었다. 패킷은 상태(1301A)에 대응하는 시간(t1)에서, 또는 가능하기로는 상태(1301B)에 대응하는 시간(t2)에서 마지막으로 스크램블되었다. 이 정보는 데이터 패킷을 생성하기 위해 사용된 조건에 따라 들어오는 데이터를 적절하게 처리하도록 노드(Ma,d)로 전달되어야만 한다. 시간(t1, t2)에서의 상태 정보는 D1 키 생성기(1305A) 및 D2 키 생성기(1305B)를 사용하여 들어오는 패킷의 패킷 해독에 필요한 대응하는 D 키(1306A, 1306)를 생성하는 데 사용된다. 해독 키 생성기는 통신 노드(Ma,d)에 부착된 DMZ 서버에 위치된 소프트웨어를 사용하여 실현된다. 암호화 및 해독 키의 일반적인 동작 및 생성이 본 발명의 배경에 기재되었다. 정적 암호화와는 달리, SDNP 네트워크의 암호화는 동적이며, 이는 적절한 해독 키를 생성하는 유일한 방법은 파일이 암호화되었던 때를 아는 것이다. 이 정보는 들어오는 데이터 패킷과 함께 또는 대안적으로 패킷이 도달하기 전에 전달된 시간 또는 상태로서 이송되며, 또한 관련 해독 키를 생성하기 위해 적절한 암호화 알고리즘을 선택하는 데 사용된다. 암호화 알고리즘 및 그 관련 해독 키 생성기는 통신 노드(Ma,d)에 연결된 보안 DMZ 서버에 공유 비밀로서 저장된다.
데이터 패킷이 암호화될 수 있더라도, 명확한 도시를 위해, 데이터 패킷은 암호화되지 않은 형태로 표시된다. 동일한 상태 정보는 수치 시드 생성기(1303)에 의해 사용되어, 대응하는 수치 시드(1304A, 1304B)를 생성하고, 시간(t1, t2)에 사용되는 알고리즘을 결정하여, 데이터 패킷을 생성한다. 수치 시드는 2가지 방법으로 생성될 수 있다. 하나의 경우에 있어서, 시드는 통신된 데이터 패킷의 스크램블링, 혼합 및 암호화가 발생한 미디어 노드에 연결된 DMZ 서버에 있는 소프트웨어를 사용하여 생성된다. 이러한 경우에, 상기 시드는 데이터 패킷의 도착 전에 통신 노드(Ma,d)에 전달되어야만 한다.
다른 경우에, 들어오는 패킷의 생성 시간은 들어오는 데이터 패킷의 헤더의 일부로서 또는 데이터에 앞서 전달된 개별 패킷으로서 통신 노드(Ma,d)로 전달된다. 그 후, 시간은 통신 노드(Ma,d)에 부착된 DMZ 서버 내에 위치한 수치 시드 생성기(1303)에 공급된다. 이들이 국부적으로 또는 소스에서 생성되어 전달된 것과는 관계없이, 발생된 수치 시드는 스크램블링 알고리즘(1308A), 혼합 알고리즘(1308B) 및 암호화 알고리즘(1308C)의 표를 포함하는 선택기(1307) 내로 공급된다. 패킷의 헤더와 관련된, 즉 패킷의 헤더 내에 포함되거나 또는 데이터 패킷 전에 전달된 시드 또는 상태 정보 이외에, 들어오는 데이터 패킷을 생성하는 데 사용된 알고리즘은 패킷 자체에 의해 운반되거나 포함되지만, 그러나 대신에 미디어 노드(Ma,d) 내에 또는 상기 미디어 노드(Ma,d)가 액세스하는 보안 서버에 국부적으로 존재한다. 지정 영역(1302A)에, 이 경우 영역(Z1)에 대한 공유 비밀로서 국부적으로 저장된 이들 알고리즘은, 동일한 영역에서 모든 미디어 노드와 공유된다. 데이터 패킷이 생성된 시간 및 상태를 알게 됨으로써, 미디어 노드(Ma,d)는 각각의 패킷(1262B, 1262C, 1262H)이 어떻게 생성되었는지, 각각의 패킷의 평문 데이터를 복구하기 위해 프로세스를 어떻게 취소할지, 예를 들어 암호화된 패킷을 어떻게 해독하고, 스크램블된 패킷을 어떻게 언스크램블할지 등을 결정할 수 있다. 공유 비밀이 배포되는 방법뿐만 아니라 이들의 사용 방법이 본 출원의 후반부에 기재된다.
해독 키(1306A, 1306B)는 선택된 암호 알고리즘(1309C)과 함께 동작하여, 암호문을 평문으로 해독한다. 특히, 암호화 알고리즘(1309C)은 데이터 패킷을 암호문을 평문으로 변환하는 데 사용될 수 있는 일련의 수학적 단계를 나타낸다. 그 후 해독 키(1306A, 1306B)는 패킷을 해독하는 데 사용될 이들 단계의 지정 조합을 선택하며, 그 각각은 들어오는 데이터 패킷이 마지막으로 암호화되었을 때의 상태 또는 시간에 대응한다. 2개의 들어오는 패킷이 동시에 암호화되었다면, 단일의 해독 키만 필요하다. 상기 참조는 "암호화" 알고리즘(1309C)에 대한 것이지만, 암호화 알고리즘은 역 해독 알고리즘을 정의하는 것임을 인식해야 한다. "비대칭"키를 사용하는 암호화의 지정 타입을 제외하고는, 대부분의 알고리즘은 대칭이며, 이는 데이터 패킷을 암호화하거나 스크램블하는 데 사용된 알고리즘의 역이 데이터 패킷의 암호를 해독하거나 언스크램블링하고 그리고 그 본래의 콘텐트를 복구하는 데 사용될 수 있음을 의미한다. 도 92a에 도시된 지정한 예에 있어서, 들어오는 데이터 패킷(1262B, 1262C, 1262H)에 대응하는 각각의 시간 및 상태에 대하여, 선택기(1307)는 들어오는 패킷을 해독하는 데 필요한 선택된 암호화 알고리즘(1309C), 들어오는 패킷을 언스크램블하는 데 필요한 선택된 스크램블링 알고리즘, 패킷을 어떤 순서로 조합하고 또한 정크 데이터를 제거하는 데 필요한 선택된 혼합 알고리즘(1309B)을 출력한다. 따라서 선택기(1307)에 의해 선택된 암호화, 스크램블링 및 혼합 알고리즘은 각각 미디어 노드(Ma,d)의 컴퓨터 서버(1220D)에 의해 데이터 패킷(1262B, 1262H, 1262C) 상에서 해독, 언스크램블링 및 혼합 동작을 수행하는 데 사용된다. 따라서 미디어 노드에 의해 데이터가 처리되는 방법은, 들어오는 데이터 패킷의 시간 및 상태와 그리고 선택된 알고리즘 모두에 의존한다. 예를 들어, 선택된 혼합 알고리즘(1309B)은 들어오는 패킷을, 패킷이 언제 발생했는지에 기초하여 감소하는 시간의 순서로 긴 패킷으로 배열하도록 배치될 수 있으며, 예를 들어 가장 오래된 패킷은 긴 패킷의 앞에 배치되고, 최신 데이터 패킷은 뒤쪽에 배치된다. 또는 대안적으로, 데이터는 데이터 패킷(1263B), 즉 1C 이전의 데이터 세그먼트(1B), 1F 이전의 데이터 세그먼트(1C) 등으로 도시된 데이터 세그먼트의 시간 순서로 배치될 수 있다. 따라서 들어오는 데이터 패킷의 처리는 현재의 시간 또는 제공된 상태가 아니라, 들어오는 패킷의 생성에 속하는 시간 및 상태 정보를 요구한다. 들어오는 패킷의 상태 및 시간 정보를 먼저 가로채지 않으면, 알고리즘 표 및 현재 상태에 대한 액세스 권한을 얻는 해커조차도 미디어 노드의 들어오는 데이터를 디코드, 해독, 판독, 또는 해석할 수 없다. 전술한 바와 같이, 선택기(1307)에 의한 알고리즘의 선택 및 키 생성기(1305A, 1305B)에 의한 키 생성은, 지리적 영역 또는 "서브넷"에 의존하며, 여기서 데이터 패킷이 생성되어, 실시예에서 "영역(Z1)"으로서 영역 정보(132A)로서 도시된다. 영역의 사용은 본 발명에서 나중에 기재될 것이다.
들어오는 데이터 패킷의 제어를 도시한 이전의 실시예와는 대조적으로, 도 92b에 도시된 출력 데이터 패킷의 제어는 과거의 시간 및 상태가 아닌 현재의 시간 및 그 대응 상태에 의존한다. 도시된 바와 같이, 시간(t3) 및 그 대응하는 상태(1301C)에서, 수치 시드 생성기(1303)는 스크램블링 알고리즘(1308A), 혼합 알고리즘(1308B) 및 암호화 알고리즘(1308C)의 표로부터 분할, 스크램블링 및 암호화를 위한 대응 알고리즘을 선택하기 위해 선택기에 의해 사용되는 수치 시드(1304C)를 생성한다. 혼합 알고리즘(1308B)이 통상적으로 대칭 함수이기 때문에, 혼합에 사용된 알고리즘의 역기능은 분할을 위해 사용되며, 이 경우 긴 데이터 패킷을 전송을 위해 준비된 다수의 패킷으로 분할한다. 이중 채널 또는 3중 채널 통신에 있어서, 생성된 모든 패킷의 목적지는 패킷 라우팅을 관리하는 시그널링 서버로부터 노드로 통신된다. 단일 채널 통신에서 미디어 노드 자체는 시그널링 서버 기능을 모방하여, 발신자 사이에 그 자신의 루트를 맵핑해야만 한다.
동일한 상태 정보(1301C)는, E3 키 생성기(1305C) 내로 공급되어, 나가는 데이터 패킷을 암호화하는 데 필요한 E 키(1306C)를 생성하고, 또한 시드 생성기(1303) 내로 공급되어 표(1308C)로부터 암호화 알고리즘(1309C)을 선택하는 데 사용되는 시드(1304C)를 생성한다. E3 키는 평문을 암호문으로 암호화하도록, 선택된 암호화 알고리즘(1308C)과 함께 동작한다. 특히 암호화 알고리즘은 평문으로부터의 데이터 패킷을 수백만, 수십억 또는 수조 가지의 가능한 암호문 결과 중 하나로 변환하는 데 사용될 수 있는 일련의 수학적 단계를 나타낸다. 그 후, 암호화 키는 패킷을 암호화하는 데 사용되는 이들 단계의 특별한 조합을 선택한다.
http://en.wikipedia.org/wiki/advanced_encryption_standard 에 기재된 고급 암호화 표준 또는 AES 와 같은 대칭 키 암호화에 있어서, 파일을 암호화하는 데 사용되는 키는 암호 해독에 사용된 것과 동일한 키이다. 이러한 경우, 각 미디어 노드 내에 포함된 공유 비밀로서 국부적으로 키를 생성하는 것이 유리하며, 예컨대 E3 키 생성기(1305C)를 사용하여 생성된다. 대칭 키가 네트워크를 통해 미디어 노드에 공급되어야만 한다면, 미디어와는 다른 통신 채널, 즉 데이터 패킷 및 콘텐츠 사용을 통해 키를 전달하는 것이 유리하다. 다중 채널 통신은 본 출원에서 나중에 기재된다.
대칭 키의 보안 전달을 향상시키는 다른 수단은, 다른 암호화 계층으로 키를 암호화하거나 또는 키를 2개의 다른 시간에 전달되는 2개의 부분으로 분할하기 위해, 예를 들어 코뮤니케 자체와 관련 없는 시간에, 예를 들어 일주일 빨리, 미디어 노드에 이를 제공하는 것이다. 다른 방법은 E3 키 생성기(1305C)에서 키 분할 알고리즘을 사용하는 것이며, 여기서 키의 일부는 공유 비밀로서 모든 미디어 노드에 국부적으로 남아 있으며, 즉 네트워크 상에 결코 존재하지 않으며, 다른 부분은 공개적으로 전달된다. 사이버 해적은 키의 일부만 볼 수 있기 때문에 실제 키가 몇 비트인지 판단할 방법이 없기 때문에 보안이 향상된다. 키의 길이를 모르면 정확한 키를 가상으로 추측하는 것을 불가능하게 하는데, 그 이유는 키 길이 및 키 요소 각각이 추측되어야만 하기 때문이다.
비대칭 또는 공개 키 알고리즘의 경우에, E3 키 생성기(1305C)는 한 쌍의 키를 동시에 생성하며, 그중 하나는 암호화를 위한 것이고, 다른 하나는 상태(1301C) 또는 시간(t3)에 기초하여 해독을 위한 것이다. 상기 해독 키는 미디어 노드에서 공유 암호로서 유지되는 반면에, 상기 암호화 키는 안전하게 데이터 노드로 데이터 패킷을 이에 준비하는 미디어 노드에 안전하게 그리고 개방되어 포워딩된다. 실시간 네트워크에서 대칭 키를 사용하는 하나의 복잡한 문제는 상기 암호화 키는 생성되어, 미디어 채널에서 콘텐츠를 포함하는 데이터 패킷을 론칭하기 전에 모든 미디어 노드에 전달할 필요가 있다는 점이며, 그렇지 않으면, 상기 데이터 패킷이 이를 해독할 키 앞에 도착하여 진부해질 수 있다는, 즉 사용하기에 너무 늦어버릴 수 있다. 비대칭 및 공개 암호화 키의 사용 및 관리에 대한 설명은, 온라인 및 수많은 텍스트 및 http://en.wikipedia.org/wiki/public-key_cryptography 와 같은 온라인 발행물에서 사용할 수 있다. 공개 키 암호화가 공지된 기술이지만, 기재된 애플리케이션은 실시간 네트워크 및 통신 시스템으로의 암호화의 고유한 통합을 포함한다.
알고리즘, 수치 시드 및 암호화 키는 모두 현재 서브넷 영역(1307A), 이 경우 영역(Z1)에 대해 생성된다. 이 영역 및 현재 시간(t3)에 기초하여, 선택된 분할 알고리즘(1309B), 선택된 스크램블링 알고리즘(1309A), 및 선택된 암호화 알고리즘(1309C)과 함께, 암호화 키(1306C)는 다음 미디어 노드로의 라우팅이 계속되기 전에, 2개의 출력-시간(t3)에서 앞으로 송신된 관련 없는 데이터 세그먼트를 포함하는 출력 데이터 패킷(1263C), 및 시간(t4)까지 보유될 데이터 세그먼트(1B, 1C, 1F)를 포함하는 출력 데이터 패킷(1263B)을 생성하기 위해, 컴퓨터 서버(1220D) 상에 호스트된 미디어 노드(Ma)에 공급된다. 데이터 패킷 또는 데이터 세그먼트를 일시적으로 유지할지 또는 이를 일시적으로 다음 미디어 노드로 전송할지에 관한 명령은, 여러 방법으로 미디어 노드에 전달될 수 있다. 하나의 경우에, 들어오는 데이터 패킷은 몇 시 또는 어떤 전제 조건까지 이를 보유하기 위한 명령을 매립할 수 있다. 대안적으로, 시그널링 서버, 즉 다른 통신 채널은 무엇을 해야 하는지에 대한 명령을 미디어 노드에 제공할 수 있다. 다중 채널 보안 통신에서 시그널링 서버의 사용은 본 발명의 후반부에 설명된다.
도 93에 도시된 바와 같이, 스크램블/언스크램블링, 암호화/해독 또는 혼합/분할 알고리즘일 수 있는 알고리즘의 표로부터 알고리즘을 선택하기 위해, 선택기(1307)는 알고리즘 및 메모리 어드레스(1308D)의 목록을 통해 검색하여, 이들을 시간(tx) 및 대응하는 현재 상태(1301D)로부터 시드 생성기(1303)에 의해 생성된 어드레스(1304D)와 비교해야 한다. 상태-생성 어드레스(1304D)가 알고리즘 표(1308D) 내의 항목과 일치할 때, 선택된 알고리즘(1309D)은 검색 루틴으로부터 출력되어 사용된다. 예를 들어, 시드 생성기(1303)가 "356"의 값을 갖는 어드레스(1304D)를 생성하였다면, 선택기(1307)는 표로부터 일치하는 항목, 즉 "위상 시프트 모드 2"를 식별하여, 이를 선택된 알고리즘(1309D)으로서 출력할 것이다.
체계적인 추적을 방지하기 위해, 알고리즘 목록과 그 대응하는 메모리 어드레스가 정기적으로, 예를 들어 매일 또는 매시간 재구성되므로, 우연히 이것이 반복되더라도 동일한 어드레스가 동일한 알고리즘을 호출하지 않는다. 도 94에 도시된 바와 같이, 영역(Z1)에서 318일에 대한 알고리즘 표는 318일의 영역(Z1)에서 스크램블링 및 언스크램블링을 위해 사용된 알고리즘 어드레스 표(1308D)를 포함하며, 즉 318일의 영역(Z1)에서 데이터 패킷을 분할 및 혼합하기 위해 사용된 알고리즘 어드레스 표(1308E)를 포함하며, 즉 318일의 영역(Z1)에서 암호화 또는 해독을 위해 사용된 표인 알고리즘 어드레스 표(1308F)를 포함한다. 그 후, 소정의 이벤트 날짜(1311) 및 시간(1310)에서, 재할당 어드레스 동작(1312)이 알고리즘 및 어드레스의 목록을 셔플하여, 즉 혼합하여, 319일에 영역(Z1)에서 스크램블링 및 언스크램블링을 위해 알고리즘 어드레스 표(1308G)를 포함하는 3개의 새로운 표, 제2 표-319일에 영역(Z1)에서 혼합 및 분할을 위한 알고리즘 어드레스 표(1308H), 319일에 영역(Z1)에서 암호화 및 해독을 위한 제3 표, 즉 알고리즘 어드레스 표(1308J)를 생성한다. 예를 들어, 도시된 바와 같이, 318일에 "전치 모드 5"는 대응하는 메모리 어드레스(359)가 있지만, 그러나 하루 후에는 상기 어드레스가 424로 바뀐다. 이런 방식으로, 해킹을 피하기 위해, 어드레스와 알고리즘 사이의 변환 표가 셔플된다.
영역 및 브릿지 - 해커 또는 사이버 해적이 SDNP 클라우드 및 네트워크 전체에 액세스하는 것을 방지하면서 전 세계적으로 통신하기 위해, 본 발명의 다른 실시예에 있어서, SDNP 통신 네트워크는 "영역"으로 세분된다. 여기서, 영역은 네트워크의 하위 부문, 즉 "서브넷"을 나타내며, 여기서 각각의 영역은 별도의 암호화 키 및 고유의 수치 시드뿐만 아니라, 상기 영역에서 사용되는 혼합 및 분할, 스크램블링 및 언스크램블링, 그리고 암호화 및 해독을 정의하는 고유의 그리고 별도의 알고리즘 및 알고리즘 표를 포함하는 그 자신의 고유한 명령, 제어, 및 보안 설정을 갖는다. 당연히 동일한 영역 내에서 SDNP 소프트웨어를 동작하는 통신 서버는 동일한 영역 설정을 공유하여, 어떤 영역이 이에 있는지 완전히 모르는 방식으로 동작한다.
각 서브넷은 서로 다른 ISP 또는 호스팅 회사, 예를 들어 마이크로소프트, 아마존, 야후에 의해 호스트된 SDNP 소프트웨어를 동작하는 서로 다른 서버 클라우드를 포함할 수 있으며, 또는 어두운 섬유 전용 대역폭을 포함하는 임대된 사설 클라우드와 같은 개인 호스트된 클라우드 또는 네트워크 어드레스 네트워크 어드레스 변환기(NAT)를 포함할 수 있다. 북부 캘리포니아 소재의 컴캐스트, 로컬 PSTN 또는 현지 휴대폰 연결과 같은 로컬 휴대폰과 같은 라스트 마일 서비스를 제공하는 통신업체를 처리하는 것도 유리하다. 영역을 사용하는 주요 이점은 천재 사이버 해적이 일시적으로 SDNP 보안 조항을 무력화하는 최악의 시나리오에서 그 공격의 지리적 범위를 더 작은 서브넷으로 제한하여, 종단 간 통신에 대한 액세스를 차단하는 것이다. 본질적으로 영역은 사이버 공격의 잠재적 손상을 포함한다.
영역 사용의 예가 도 95a에 도시되어 있으며, 여기서 SDNP 소프트웨어를 실행하는 컴퓨터 서버(1118)를 포함하는 클라우드(1114)는 "영역(Z1)"을 포함하는 서브넷(1318A) 및 "영역(Z2)"를 포함하는 서브넷(1318C)의 2개의 서브넷으로 분할된다. 도시된 바와 같이, 서브넷(1318A)은 Mb,d 및 Mb,h 와 함께 SDNP 미디어 노드(Ma,w, Ma,s, Ma,j, Ma,b, Ma,q, Ma,f)를 포함하며, 서브넷(1318C)은 미디어 노드(Mb,d, Mb,h)와 함께 노드(Mc,j, Mc,n, Mc,v, Mc,u, Mc,z)를 포함한다. 선두 첨자 "a", 즉 Ma를 갖는 미디어 노드가 영역(Z1)에 고유하고, 또한 선두 첨자 "c"를 갖는 미디어 노드, 즉 Mc는 영역(Z2)에 유일한 반면에, 컴퓨터 서버(1220D, 1220H)에 의해 호스트된 미디어 노드(Mb,d, Mb,h)는 서브넷(1318A, 1318C) 모두에 의해 공유된다는 점에서 고유하다. 컴퓨터 서버(1220D, 1220H) 상에서 동작하는 SDNP 소프트웨어는 영역(Z1)과 영역(Z2) 모두에서 다른 미디어 노드와 통신하는 방법을 이해해야 한다. 이러한 디바이스는 두 서브넷 사이에서 "브릿지" 역할을 하며, 또한 파일에 고정된 영역(Z1)으로부터 파일에 고정된 영역(Z2)에 따라 포맷된 데이터로 반드시 변환해야만 하며, 그 반대의 경우도 마찬가지이다.
브릿지 미디어 노드(Mb,d)와 같은 브릿지 미디어 노드에서 수행되는 변환 기능이 도 95b에 도시되어 있으며, 이는 영역(Z1)에서 영역(Z2)으로의 데이터 흐름을 도시하고 있으며, 여기서 브릿지 미디어 노드(Mb)를 호스트하는 브릿지 컴퓨터 서버(1220D) 내의 DUM 동작(1210)은 미디어 노드(Mb,d) 내에서 이를 SSE 동작(1213)으로 전달하는 긴 패킷을 생성하기 위해 알고리즘 표(1308K)를 사용하여 서브넷(1318A), 영역(Z1)에 대한 해독, 언스크램블링, 및 혼합을 수행하며, 이는 알고리즘 표(1308L)를 사용하여 서브넷(1318C), 영역(Z2)에 대한 분할, 스크램블링, 및 암호화를 수행한다. 브릿지 미디어 노드(Mb,d)의 전이중 버전이 도 95c에 도시되어 있으며, 이는 브릿지 미디어 노드(Mb,d)가 영역(Z1)으로부터 영역(Z2)으로의 양방향 데이터 전달 및 변환을 수행하는 것을 도시하고 있으며, 그 반대의 경우도 마찬가지이다. 영역(Z1)으로부터 영역(Z2)으로의 데이터 변환을 위해, 브릿지 미디어 노드(Mb,d)를 위한 호스트인 SDNP 브릿지 컴퓨터 서버(1220D)는, 이들이 영역(Z2)[서브넷(1318C)]에 들어갈 때 데이터 패킷에 대해 SSE 동작(1210)이 뒤따르는, 영역(Z1)[서브넷(1318A)]을 떠남에 따라, 데이터 패킷에 대해 DUM 동작(1210)을 수행한다. 반대로, 영역(Z2)으로부터 영역(Z1)으로의 데이터 변환을 위해, SDNP 브릿지 컴퓨터 서버(1220D)는 이들이 영역(Z1)[서브넷(1314)]에 들어갈 때 데이터 패킷에 대한 SSE 동작(1213)이 뒤따르는, 영역(Z2)[서브넷(1318C)]을 떠남에 따라, 데이터 패킷에 대한 DUM 동작(1210)을 수행한다. 브릿지 미디어 노드(Mb,d)에서 수행되는 모두 4개의 데이터 동작은 동일한 컴퓨터 서버 호스트, 이 경우에는 컴퓨터 서버(1220D)에 상주하는 소프트웨어에서 수행된다.
도 95c에 도시된 완전히 통합된 SDNP 브릿지 미디어 노드(Mb,d)는, 공용 컴퓨터 서버(1202D) 내의 2개의 상이한 영역, 즉 영역(Z1) 및 영역(Z2)에 대한 DUM 및 SSE 동작 모두를 수행한다. 이러한 완전히 통합된 실행은 연결된 2개의 서브넷이 동일한 ISP 또는 클라우드 내에 호스트된 경우에만 실현될 수 있다. 그러나 서브넷이 도 95d의 서브넷(1318A, 1318C)에 도시된 바와 같이 상이한 서비스 공급자가 호스트하는 상이한 클라우드에 상주한다면, 동일한 클라우드에 상주하지 않는 두 컴퓨터 서버 사이에 통신 브릿지를 실현되어야만 한다. 도시된 바와 같이, 브릿지 통신 링크(1316B)는 영역(Z1)에서 동작하는 SDNP 브릿지 미디어 노드(Mb)를 영역(Z2)에서 동작하는 SDNP 브릿지 미디어 노드(Mb)에 연결하지만, 그러나 영역(Z1)은 클라우드(1114)에서 동작하고, 영역(Z2)은 다른 클라우드(1315)에서 동작한다. 도 95c에 이미 도시된 동일한 방법의 이용은 다중 클라우드의 경우에 문제가 되는데, 그 이유는 클라우드 사이를 이동하는 브릿지 통신 링크(1316B)가 안전하지 않고 스니핑 및 사이버 공격에 취약하기 때문이다. 도 95e는 서브넷(1318A) 및 영역(Z1)에서 컴퓨터 서버(1220H)에 의해 호스트된 브릿지 미디어 노드(Mb,h)에 의해 수행되는 DUM 동작이 서브넷(118C) 및 영역(Z2)에서 컴퓨터 서버(1220U)에 의해 호스트된 브릿지 미디어 노드(Mb,u)에 브릿지 통신 링크(1316B)를 통해 데이터 패킷을 송신하는 경우를 도시하고 있지만, 그러나 상기 통신은 브릿지 미디어 노드(Mb,h)의 DUM 동작으로부터 암호화되지 않은 언스크램블된 긴 패킷 출력이기 때문에, 클라우드-클라우드 홉은 보안되지 않고 사이버 공격에 노출된다.
이 문제에 대한 해결책은 2개의 전이중 브릿지 인터페이스 미디어 노드를 사용하는 것이며, 그중 하나는 도 95f에 도시된 바와 같이 인터페이스 사이에 보안 통신 전송을 갖는 각 클라우드에 하나씩 있다. 영역(Z1) 내지 영역(Z2) 통신에서, 서브넷(1318A) 내의 영역(Z1)으로부터 들어오는 데이터 패킷은 스크램블링 및 암호화를 포함하는 단일 채널 영역(Z2) 데이터로 변환된다. 이 기능은 영역(Z1) 및 영역(Z2), 수치 시드, 암호화 키, 알고리즘 표, 다른 보안 항목에 액세스를 갖는 미디어 노드(Mb,d)를 요구한다. 모든 처리는 영역(Z2) 목적지 클라우드가 아니라, 서브넷(1318A) 내에 위치한 컴퓨터 서버(1220D)에서 수행된다. 보안 데이터는 보안 브릿지 통신 링크(1316A)를 사용하여 서브넷(1318A)의 브릿지 인터페이스 미디어 노드(Mb,d)로부터 서브넷(1318C)의 브릿지 인터페이스 미디어 노드(Mb,u)로 전송된다. 브릿지 인터페이스 미디어 노드(Mb)에 도달함에 따라, 데이터 패킷은 영역(Z2) 정보에 따라 처리되어, 서브넷(1318C) 내로 앞으로 전송된다.
역으로, 영역(Z2)에서 영역(Z1) 통신에서, 영역(Z2) 및 서브넷(1318C)으로부터 미디어 노드(Mb,u)로 들어오는 데이터 패킷은, 스크램블링 및 암호화를 포함하는 단일 채널 영역(Z1) 데이터로 변환된다. 이 기능은 영역(Z1) 및 영역(Z2), 수치 시드, 암호화 키, 알고리즘 표, 다른 보안 항목으로의 액세스를 갖는 미디어 노드(Mb,d)를 요구한다. 모든 패킷은 영역(Z1) 목적지 클라우드가 아니라, 서브넷(1318C) 내에 위치된 컴퓨터 서버(1220U)에서 처리된다. 그 후, 보안 데이터는 보안 브릿지 통신 링크(1316C)를 사용하여 서브넷(1318C)의 브릿지 인터페이스 미디어 노드(Mb,u)로부터 서브넷(1318A)의 브릿지 인터페이스 미디어 노드(Mb,d)로 전송된다. 브릿지 인터페이스 미디어 노드(Mb)에 도달함에 따라, 데이터 패킷은 영역(Z1) 정보에 따라 처리되어, 서브넷(1318A)으로 전송된다. 보안 브릿지 통신 링크(1316A, 1316C)가 별도의 라인으로 도시되어 있더라도, 라인은 네트워크 계층(3)에서 별개의 통신 채널을 나타내며, 또한 하드웨어 또는 PHY 계층 1 기재에서 별도의 와이어, 케이블 또는 데이터 링크에 대응하는 것으로 의도되지는 않는다. 대안적으로, 수신 브릿지 노드가 영역(Z1, Z2) 모두에 대한 공유 비밀을 유지하는 한, 수신 브릿지 노드는 Z1 송신 영역으로부터 Z2 수신 영역으로 데이터를 변환할 수 있다.
SDNP 게이트웨이 동작 - 이전 섹션에서는 별도의 서브넷, 네트워크 또는 클라우드 사이에 통신하는 미디어 노드 또는 임의의 미디어 노드 또는 미디어 노드의 쌍으로서 "브릿지"를 기재하였다. 유사한 방식으로, 여기에 기재된 SDNP "게이트웨이 미디어 노드"는 SDNP 클라우드와 클라이언트 디바이스, 예를 들어 휴대폰, 자동차, 태블릿, 노트북, 또는 IoT 디바이스 사이의 통신 링크를 제공한다. 게이트웨이 미디어 노드 동작이 도 96a에 도시되어 있으며, 여기서 SDNP 미디어 노드(Mb,f)를 호스트하는 SDNP 클라우드(1114) 내의 컴퓨터 서버(1220F)는 서브넷(1318A)과 태블릿(33)으로의 라스트 마일 연결(1318D) 사이에서 SDNP 게이트웨이 미디어 노드로서 작용한다. 서브넷(1318A)과는 달리, 라스트 마일 연결(1318D)은 인터넷, 사적 클라우드, 케이블 TV 연결 또는 셀룰러 링크를 통해 발생할 수 있다. 라스트 마일 라우팅은 서브넷(1318A)에서처럼 정확히 제어될 수 없다. 예를 들어, 게이트웨이 미디어 노드(Mb,f)는 그 지점을 지나 연결(1317)에 의해 서버(65A)에 링크되며, 공중 무선 기지국(100)으로의 라우팅은 로컬 인터넷 라우터에 의해 제어된다. 또한, WiFi 안테나(26)로부터 태블릿(33)으로의 WiFi 무선 링크(29)는 종종 공항, 호텔, 커피 숍, 컨벤션 센터, 원형 극장 또는 다른 공공장소에 위치하는 로컬 디바이스에 의해 제어된다.
대안적으로, 라스트 마일은 안테나(18)로부터 태블릿(33)으로의 무선 링크(28)를 갖는 LTE 기지국(17)으로 유선 링크를 포함할 수 있다. 그 불확실한 라우팅 및 액세스 때문에, 클라이언트로의 라스트 마일 라우팅에 사용된 디바이스를 갖는 SDNP 에서 사용되는 보안 설정 또는 비밀을 공유하지 않는 것이 유리하다. 따라서 라스트 마일 링크(1318D)는 Z1 정보에 액세스할 수 없으며, 그러나 대신에 별도의 영역(U2)을 사용하여 보안 설정을 관리한다. 클라우드(1114)와 라스트 마일, 게이트웨이 미디어 노드(Mb)를 링크시키기 위해, 게이트웨이 미디어 노드(Mb,f)는 반드시 영역(Z1) 및 영역(U2) 보안 설정 모두에 대한 액세스를 반드시 가져서, 클라우드 인터페이스(1320)와 클라이언트 인터페이스(1321) 사이의 통신을 촉진시킨다. 안전한 라스트 마일 통신을 제공하기 위해, 도시된 태블릿(33)의 예에서 클라이언트는 SDNP 클라이언트 소프트웨어 애플리케이션(1322)도 동작시켜야만 한다.
SDNP 게이트웨이 노드(Mb,f)는 클라우드(1114) 내의 미디어 노드 사이의 통신을 촉진시키는 클라우드 인터페이스(1320), 및 클라이언트 인터페이스(1321)는 라스트 마일을 가로지르는 통신을 촉진시키기 위해 클라이언트 인터페이스(1321)를 포함한다. 도 96b에 도시된 바와 같이, 클라우드 인터페이스(1320)는 2개의 데이터 경로, 즉 SSE(1213) 및 DUM(1210)을 포함한다. 또한, 도 96c에 도시된 클라이언트 인터페이스(1321)는 2개의 데이터 경로, 즉 하나는 게이트웨이로부터 클라이언트로의 데이터 흐름을 위한 것이고, 다른 하나는 클라이언트로부터 게이트웨이로의 역방향의 데이터 흐름이다. 구체적으로, 게이트웨이로부터 클라이언트로의 데이터 흐름은 패킷 스크램블링(926) 및 최종적으로 암호화(1026)가 뒤따르는, 데이터 스트림에 정크 데이터를 삽입하는 데 사용되는 단일-루트 분할 동작(1106)을 순차적으로 포함한다. 반대 방향에서, 클라이언트로부터 게이트웨이로의 데이터 흐름은 데이터 스트림으로부터 정크 데이터를 제거하기 위해 사용되는 해독(1032), 패킷 언스크램블링(928) 및 단일 루트 혼합 동작(1089)을 순차적으로 포함한다.
라스트 마일과 같은 단일 루트 통신에서 혼합 및 분할 동작의 역할은 두 가지이다. 첫째, 중요하게도, 실시간 데이터 스트림은 각각 가능하기로는 용이한 검출을 피한 가변 길이의 그 자신의 식별 태그를 갖는 다수의 순차적 서브패킷으로 분할된다. 따라서 결과적인 직렬 데이터 스트림은 제1 패킷이 송신될 동안, 일부 데이터 서브패킷이 일시적으로 보유될 것을 요구한다. 통신 데이터 전달률이 SDNP 클라우드에서 초당 수백 기가비트로 발생하기 때문에, 직렬화는 거의 순간적이며, 오직 나노초만 요구한다. 라스트 마일 통신 내에서, 데이터 속도는 더 느리다(예를 들어, 초당 2 기가비트)(그러나 현대식 시스템에서는 여전히 매우 빠르다). WiFi, 4G/LTE, DOCSIS 3 및 이더넷이 모두 데이터를 여하튼 연속적으로 전송하기 때문에 추가 지연이 발생하지 않는다.
단일 채널 혼합에 대한 두 번째 요구 사항인 단일 루트 혼합 동작은, 도 67j와 관련하여 이미 기재된 방식으로분석을 혼란에 빠뜨릴 수 있는 여러 가지 방법으로 서브패킷 내에 정크 데이터를 삽입하는 데 사용된다.
도 96d에 도시된 바와 같이, 라스트 마일을 통해 안전하게 통신하기 위해, 클라이언트sms 클라이언트(1322) 소프트웨어를 실행해야만 한다. 휴대폰 또는 태블릿에서, 이 클라이언트 소프트웨어는 디바이스의 운영체제, 예를 들어 안드로이드 또는 iOS 상에서 동작되어야만 한다. 데스크톱 또는 노트북 컴퓨터에서, 클라이언트 소프트웨어는 컴퓨터 운영 체제, 예를 들어 MacOS, 윈도우즈, 리눅스 또는 유닉스에서 실행된다. SDNP 클라이언트 소프트웨어를 호스트할 수 없는 IoT 와 같은 소비자 디바이스와 통신이 발생하는 경우, 매립된 클라이언트 펌웨어를 갖는 하드웨어 디바이스는 인터페이스로서 사용될 수 있다. 클라이언트(1322)에 의해 수행되는 통신 관련 기능은 패킷 페이로드를 복구하기 위해, 단일 루트 혼합 동작(1089)을 사용하여, 해독 동작(1032), 패킷 언스크램블링(928) 및 디정킹에 의해 들어오는 데이터 패킷을 처리하는 단계를 포함한다. 상기 콘텐트는 오디오 코덱, MPEG 파일, 이미지, 비-미디어 파일 및 소프트웨어에 사용되는 데이터를 포함하는 애플리케이션(1336)에서 사용된다.
나가는 데이터 패킷에 대해 클라이언트(1322)에 의해 수행되는 통신 관련 기능은 게이트웨이에 라스트 마일 통신을 위한 데이터 패킷을 준비하기 위해, 단일 루트 분할 동작(1026), 패킷 스크램블링(926) 및 최종 암호화 동작(1106)에서 정크 데이터를 삽입하는 것을 포함한다. 클라이언트(1322) 소프트웨어 내에서, 단일 루트 혼합(1089)은 들어오는 데이터 스트림으로부터 정크 데이터를 알고리즘으로 제거하는 반면에, 롤 단일 루트 분할(1026)은 정크 데이터를 데이터 패킷 내에 삽입하는 것이다.
보안 SDNP 게이트웨이 노드(Mb,f)의 동작이 도 97a에 더욱 상세히 도시되어 있으며, 여기서 클라우드 인터페이스(1320) 및 클라이언트 인터페이스(1321)는 영역(Z1) 보안 설정에 따라 DUM 동작(1210)을 사용하여 해독, 언스크램블링, 및 혼합을 수행하는 미디어 노드(Ma,h)로부터 들어오는 데이터 패킷을 수용하여, 언스크램블된 평문을 나타내는 예시적인 데이터 패킷(1330)으로 나타난다. 그 후, 데이터 패킷(1330)은 클라이언트 인터페이스(1321)로 포워딩되며, 또한 클라우드에 의해 사용되는 영역(Z1) 보안 설정이 아니라 그러나 U2 보안 설정을 사용하여, 정크 데이터(1053)를 삽입하기 위해 사용되는 단일 루트 분할 동작(1106)의 부분으로서 정크 패킷(1053)을 데이터 패킷 내로 삽입하는 게이트웨이 미디어 노트(Mb,f) 내에서 동작한다. 상기 데이터 패킷은 스크램블링 동작(926)을 사용하여 다시 스크램블되고, 데이터-패킷(1329)을 생성하기 위해 라스트 마일 지정 영역(U2) 보안 설정을 다시 이용한다.
도시된 예에 있어서, 스크램블링 동작(926)은 알고리즘을 이용하며, 이에 따라 실제 데이터 세그먼트는 스크램블되지만, 그러나 모든 다른 데이터 세그먼트는 정크 데이터 세그먼트를 포함한다. 그 다음에, 암호화 동작(1026)은 나가는 암호문(1328)을 생성하기 위해 영역(U2) 보안 설정을 사용하여 클라이언트 인터페이스(1321)에서도 수행된다. 데이터 필드는 정크 데이터(도시된 바와 같은)로부터 분리되어 개별적으로 개별적으로 암호화될 수 있거나, 또는 대안적으로 전체 데이터 패킷(1329)은 하나의 긴 암호문을 형성하도록 암호화될 수 있다. 암호화된 데이터 패킷은 최종적으로 단일 통신 채널을 통해 클라이언트로 포워딩, 즉 "익스포트(export)"된다.
동시에, 스크램블된 암호문(1327)을 포함하는 클라이언트로부터 라스트 마일 단일 채널 라우팅을 통해 수신된 데이터는, 산재된 데이터의 스크램블된 데이터 세그먼트와 정크 데이터 세그먼트의 조합을 포함하는 스크램블된 평문 데이터 패킷(1326)을 생성하기 위해, 알고리즘, 암호 해독 키 등을 포함하는 영역(U2) 보안 설정을 사용하여 해독 동작(1032)에 의해 해독된다. 본 발명의 일 실시예에 있어서, 이 들어오는 데이터 패킷(1326)의 정크 패킷은 나가는 스크램블된 평문 데이터 패킷(1329)과 동일한 슬롯에 위치되지 않는다. 예를 들어, 아웃 바운드 데이터의 예에 있어서, 모든 다른 패킷은 정크 데이터를 포함하지만, 들어오는 데이터 패킷에서 매 제3 및 제4 슬롯 및 그 정수배는 정크 데이터를 포함한다.
스크램블된 평문 데이터 패킷(1326)은 본래의 데이터 순서를 복원하고 또한 정크 패킷을 제거하기 위해, 즉 데이터를 디정크(1053)하기 위해, 패킷 언스크램블링 동작(928)에 의해, 그 후 혼합 동작(1089)에 의해 영역(U2) 보안 설정을 사용하여 다음에 처리되어, 암호화되지 않은 언스크램블된 데이터 패킷(1325)으로 나타난다. 그 후, 이 데이터 패킷은 클라이언트 인터페이스(1321)로부터 클라우드 인터페이스(1320)로 통과되어, 미디어 노드(Mb,h) 등으로의 메시형 라우팅을 위해 상이한 데이터 패킷에서 결과적인 단편화된 데이터를 포워딩하기 전에, SSE 동작(1213)을 사용하여 클라우드 지정 분할, 스크램블링 및 암호화를 수행한다.
도 97b에 추가로 도시된 바와 같이, SDNP 게이트웨이 미디어 노드(Mb,f)는 영역(Z1) 보안 설정에 따라 클라우드 인터페이스(1320)와 영역(U2) 보안 설정에 따라 클라이언트 인터페이스(1321) 모두에서 전이중 통신을 촉진시키도록 소프트웨어를 이용한다. LTE 기지국(27), LTE 라디오 타워(18) 및 무선 링크(28)를 통해 클라이언트 인터페이스(1321)로부터 태블릿(33)으로의 라스트 마일 연결(1355)은, 통신이 스크램블되고 암호화되고 또한 정크 데이터가 데이터 패킷에 삽입되었기 때문에, 안전하다. 들어오는 데이터 패킷을 해석하고 안전하게 응답하기 위해, 클라이언트 디바이스, 이 경우에는 태블릿(1322)이 SDNP 가능 디바이스 애플리케이션 소프트웨어(1322)를 실행해야만 한다.
SDNP 클라이언트 인터페이스에서의 데이터 패킷들의 처리는 도 98에서 더욱 상세히 설명되며, 여기서 클라이언트 노드(C2,1)는 모두 보안 영역(U2)에 있는 클라이언트 인터페이스(1321)와 SDNP 클라이언트(1322) 사이의 전이중 데이터 교환에 의해 SDNP 게이트웨이 미디어 노드(Mb,d)와 안전하게 통신한다. 동작 시, 클라이언트 인터페이스(1321)로부터 도착한 데이터 패킷은 해독 동작(1032)에서 해독되고, 언스크램블링 동작(928)에서 언스크램블되고, 애플리케이션(1336)에 의해 처리되기 전에 분할 동작(1089)을 사용하여 디정크 처리된다. 반대로, 애플리케이션(1336)의 출력은 정크를 삽입하기 위해 혼합 동작(1026)에 의해 처리되고, 그 후 스크램블링 동작(926)에서 스크램블되고, 데이터가 클라이언트 인터페이스(1321)로 전송되기 전에 암호화 동작(1106)에서 암호화된다.
여기에 기재된 방법을 사용하여, 메시형 네트워크를 통해 정적 또는 동적으로 라우팅되는 둘 이상의 클라이언트 사이의 안전한 통신은, 분리된 키, 고유의 수치 시드, 및 유사하지 않은 보안 관련 비밀에서 관리되는 혼합, 분할, 암호화 및 스크램블링 알고리즘의 임의의 조합을 사용할 수 있다. 도 99a에 도시된 바와 같이, 소프트웨어 기반 SDNP 미디어 노드를 실행하는 컴퓨터 서버(1118)를 포함하는 메시형 네트워크는, 미디어 노드(Mb,f, Mb,d)를 호스트하는 컴퓨터 서버(1220F, 1220D)를 포함한다. 서브넷(1318A) 내의 보안은 영역(Z1)에 대한 보안 설정으로 관리된다. 게이트웨이 미디어 노드(Mb,d)는 이 경우에는 라스트 마일 링크(1318E)를 통해 액세스된 외부 디바이스 상에 호스트된, 클라이언트 노드(C1,1)에 연결된다. 라스트 마일 링크(1318E) 상의 보안은 영역(U1)의 보안 설정에 의해 관리된다. 마찬가지로, 게이트웨이 미디어 노드(Mb,f)는 태블릿(33) 상에 호스트되고 또한 라스트 마일 링크(1318D)를 통해 연결된 클라이언트 노드(C2,1)에 연결된다. 라스트 마일 링크(1318D)의 보안은 영역(U2)의 보안 설정에 의해 관리된다.
도시된 바와 같이, 패드록에 의해 상징되는 암호화 동작(1339)을 이용한 통신은 네트워크 및 라스트 마일 링크를 통해 보안을 제공한다. 라스트 마일을 확보하기 위해, 암호화는 반드시 클라이언트 디바이스 내에서 수행된다. 선택적으로, 패킷은 게이트웨이 미디어 노드에 의해 재암호화되거나 이중 암호화될 수 있으며, 또는 다른 실시예에서는 메시형 전송 네트워크의 모든 미디어 노드에 의해 해독되고 재암호화될 수 있다. 여기에 기재된 본 발명의 일 실시예는 다중-레벨 보안을 촉진시킨다. 예를 들어, 도 99a에서, 라스트 마일 통신 링크(1318D, 1318E)는 암호화, 즉 단일 레벨 또는 1 차원 보안에 의존한다. 네트워크(1318A) 내에서, 통신은 정적 분할, 다중 경로 전송 및 혼합을 포함하는 메시형 네트워크 동작에 암호화를 조합하는 2차원 또는 이중 레벨 보안을 이용한다. 보안 설정이 시간에 따라, 예를 들어 "동적으로" 변하는 경우, 데이터 패킷이 네트워크를 통해 전송될 때, 보안의 추가된 레벨, 즉 라스트 마일에 대한 2차원 또는 이중 레벨 보안, 및 SDNP 클라우드 내의 3차원 보안이 실현된다.
도 99b에 도시된 바와 같이, 네트워크(1318A)에 스크램블링을 추가하는 것은 보안을, 메시형 전송 및 스크램블링을 이용한 암호화를 스크램블링과 조합하는 더 높은 등급의 다중 레벨 보안으로 증가시킨다. 특히, 이런 접근법에서, 클라이언트 노드(C2,1)로부터 클라이언트 노드(C1,1)로의 통신은 게이트웨이 미디어 노드(Mb,f)에 스크램블링 동작(926)을 포함하고, 또한 게이트웨이 노드(Mb,d)에 언스크램블링 동작(928)을 포함한다. 클라이언트 노드(C1,1)로부터 클라이언트 노드(C2,1)로의 통신에 있어서, 클라이언트 노드(C1,1)로부터의 암호화된 데이터 패킷이 먼저 해독되고, 그 후 다중 경로 전송을 위해 분할되며, 스크램블링 동작(926)에 의해 스크램블되고, 게이트웨이 미디어 노드(Mb,d)에 암호화된다. 네트워크(1318A)를 통한 전송 후에, 데이터 패킷은 해독되고, 스크램블링 동작(928)을 사용하여 언스크램블되고, 그 후 혼합된다. 이런 접근법이 네트워크(1318A) 내에 다차원 보안을 제공하지만, 이는 라스트 마일에 다중 레벨 보안을 제공하지 않으며, 이는 스크램블링 없이 단일 채널 전송을 사용하는 것은 그 보안을 위해 암호화에만 의존한다.
도 99c에 도시된 본 발명의 다른 실시예는 클라이언트 노드(C2,1)에 대한 네트워크(1318A) 및 라스트 마일 연결(1318D) 모두를 커버하기 위해 암호화 및 스크램블링을 조합한 다중 레벨 보안 기술을 확장한다. 따라서 클라이언트 노드(C2,1)로부터 클라이언트 노드(C1,1)로의 통신은 클라이언트 노드(C2,1) 내에 스크램블링 동작(926), 및 게이트웨이 미디어 노드(Mb,d) 내에 언스크램블링 동작(928)을 포함한다. 클라이언트 노드(C1,1)로부터 클라이언트 노드(C2,1)로의 통신은 게이트웨이 노드(Mb,d)에서 스크램블링 동작(926), 및 클라이언트 노드(C2,1)에서 호스트된 언스크램블링 동작(928)을 이용한다. 그러나 클라이언트 노드(C1,1)와 게이트웨이 미디어 노드(Mb,d) 사이의 라스트 마일 연결(1318E)은 오직 암호화에만 의존한다. 이러한 경우는 클라이언트 노드(C2,1)가 SDNP 보안 가능 소프트웨어 애플리케이션을 동작시키지만, 그러나 클라이언트 노드(C1,1)가 기성 암호화만을 사용하는 경우 발생할 수 있다.
도 99d에 도시된 본 발명의 다른 실시예는 클라이언트-클라이언트로부터, 즉 종단 간으로부터의 다차원 보안을 위한 스크램블링 암호화를 연장시킨다. 따라서 클라이언트 노드(C2,1)로부터 클라이언트 노드(C1,1)로의 통신은 클라이언트 노드(C2,1) 내의 스크램블링 동작(926) 및 클라이언트 노드(C1,1) 내의 언스크램블링 동작(928)을 추가하는 것을 포함한다. 클라이언트 노드(C1,1)로부터 클라이언트 노드(C2,1)로의 통신은 클라이언트 노드(C1,1) 내에 스크램블링 동작(926), 및 클라이언트 노드(C2,1)에서 호스트된 언스크램블링 동작(928)을 추가하는 것을 포함한다. 동작 시, 클라이언트 노드(C1,1)는 임의의 나가는 데이터 패킷을 스크램블 및 암호화하고, 또한 휴대폰(32)에서 실행되는 SDNP 가능 소프트웨어를 통해 들어오는 데이터에 대해 해독 및 언스크램블링을 수행한다. 유사하게, 클라이언트 노드(C2,1)는 임의의 나가는 데이터 패킷을 스크램블링하고 암호화하고, 또한 태블릿(33) 상에서 동작하는 SDNP 가능 소프트웨어를 통해 들어오는 데이터에 대한 해독 및 언스크램블링을 수행한다. 함께, 이들은 라스트 마일 연결(1318D)에서 즉 암호화 및 스크램블링을 포함하는 이중 계층 또는 2차원 보안, 및 메시형의 그리고 다중 루트 전송을 통해 메시형 네트워크(1318A) 내의 3차원 또는 3중 계층 보안과의 종단 간 보안 통신을 촉진시킨다. 데이터 패킷이 네트워크를 가로질러 전송될 때 보안 설정이 시간에 따라 "동적으로" 변화하는 경우에, 추가된 보안 레벨이 실현되며, 즉 라스트 마일에 대한 3차원 또는 3중 레벨 및 SDNP 클라우드 내의 4차원 보안이 실현된다.
이 실행의 가능한 약점은 클라이언트에 의해 사용되는 동일한 스크램블링 방법과 수치 시드가 SDNP 클라우드를 보호하는 경우에도 사용된다는 점이다. 결과적으로, 영역(U2), Z1 및 U1의 보안 설정은 반드시 공유되어, 전체 네트워크를 위험에 빠뜨리고, 라스트 마일 사이버 공격을 통해 검색으로 라우팅해야 한다. 노출된 클라우드 보안 설정을 방해하는 데 사용할 수 있는 하나의 방법이 도 99e에 도시되어 있으며, 여기서 라스트 마일 연결(1318D)은 영역(U2) 보안 설정을 사용하여 스크램블링을 사용하고 클라우드는 영역(Z1) 보안 설정을 스크램블링을 이용하는 반면에, 상기 클라우드는 그 스크램블을 위해 영역(Z1) 보안 설정을 사용한다. 이 예에 있어서, 태블릿(33)에서 애플리케이션으로서 동작되는 클라이언트 노드(C2,1)는 영역(U2) 보안 설정에 따라 스크램블링(926)을 촉진시킨다. 컴퓨터 서버(1220F)에 의해 호스트된 게이트웨이 미디어 노드(Mb,f)는 영역(U2) 보안 설정을 사용하여 들어오는 데이터 패킷을 언스크램블링하고, 그 후 메시형 네트워크(1318A)에 대한 전송을 위해 영역(Z1) 보안 설정을 사용하여 데이터 패킷을 다시 스크램블한다. 이러한 방식으로 클라우드의 영역(Z1) 보안 설정은, 라스트 마일 연결(1318D)에서 공개되지 않는다.
다중 레벨 보안에 대한 추가적인 개선이 도 99f에 도시되어 있으며, 여기서 스크램블링 및 암호화는 클라이언트 노드(C2,1)를 게이트웨이 미디어 노드(Mb,f)에 연결하는 3개의 상이한 영역 라스트 마일 연결(1318D)에서 상이한 보안 설정을 사용하여 발생하며, 이는 영역(U2) 보안 설정, 게이트웨이 미디어 노드(Mb,f, Mb,d)를 포함하는 메시형 네트워크(1318A)를 이용하며, 이는 영역(Z1) 보안 설정, 및 게이트웨이 미디어 노드(Mb,d)를 클라이언트 노드(C1,1)에 연결하는 라스트 마일 연결(1318E)을 이용하며, 이는 영역(U2) 보안 설정을 이용한다. 이 접근법은 라스트 마일에서 2중 계층 또는 2차원 보안 및 클라우드에 3차원 보안을 나타내는 클라우드에서 종단 간 보안에 종단 간 암호화, 종단 간 스크램블링, 및 클라우드에서의 메시형 라우팅을 제공한다. 데이터 패킷이 네트워크를 가로질러 전송됨에 따라 보안 설정이 시간에 따라 동적으로 변하는 경우, 추가적인 보안 수준이 실현되어, 라스트 마일에 대해 3차원 또는 이중 레벨 보안을 제공하며 또한 SDNP 클라우드 내에 4차원 보안을 제공한다.
클라이언트 노드(C2,1)로부터 클라이언트 노드(C1,1)로, 즉 태블릿(33)으로부터 휴대폰(32)으로의 통신에서, 클라이언트 노드(C2,1) 상에서 동작되는 SDNP 애플리케이션은 암호화가 뒤따르는 영역(U2) 보안 설정을 갖는 스크램블링 동작(926)을 사용하여 나가는 데이터 패킷을 스크램블한다. 라스트 마일 연결(1318D)을 가로지르는 단일 채널 데이터 패킷이 먼저 해독되고, 그 후 영역(U2) 보안 설정을 사용하여 게이트웨이 미디어 노드(Mb,f)에 의해 수행되는 언스크램블링 동작(928)에 의해 언스크램블된다. 영역(Z1) 보안 설정을 사용하여, 그 후 게이트웨이 미디어 노드(Mb,f)는 영역(Z1) 보안 설정을 사용하여 네트워크(1318A)를 통한 메시형 전송의 데이터를 분할, 스크램블, 및 암호화한다. 게이트웨이 미디어 노드(Mb,d)에서, 데이터 패킷은 해독되고, 언스크램블링 동작(928)으로 해독되고, 그 후 영역(Z1) 보안 설정을 사용하여 단일 채널 통신을 위해 데이터 패킷으로 혼합된다. 게이트웨이 미디어 노드(Mb,d)는 그 후 영역(U1) 보안 설정을 사용하여 단일 채널 데이터 패킷을 다시 스크램블링하고 암호화하며, 그 후 상기 데이터를 클라이언트(C1,1) 상으로 포워딩한다. 휴대폰(32) 상에서 동작하는 SDNP 가능 애플리케이션은 영역(U1) 보안 설정을 사용하여 그 목적지로 전달된 최종 패킷을 언스크램블링 동작(928)을 사용하여 해독하고 언스크램블한다.
마찬가지로, 반대 방향으로, 즉 클라이언트 노드(C1,1)로부터 클라이언트 노드(C2,1)로, 즉 휴대폰(32)으로부터 태블릿(33)으로의 통신에서, 클라이언트 노드(C1,1) 상에서 동작되는 SDNP 애플리케이션은 영역(U1) 보안 설정을 갖는 스크램블링 동작(926)을 사용하여 나가는 데이터 패킷을 스크램블한다. 라스트 마일 연결(1318E)을 횡단하는 단일 채널 데이터 패킷이 먼저 해독되고, 그 후 영역(U1) 보안 설정을 사용하여 게이트웨이 미디어 노드(Mb,d)에 의해 수행되는 언스크램블링 동작(928)에 의해 언스크램블된다. 영역(Z1) 보안 설정을 사용하여, 게이트웨이 미디어 노드(Mb,d)는 그 후 영역(Z1) 보안 설정을 사용하여 네트워크(1318A)에 대해 메시형 전송의 데이터를 분할하고, 스크램블링하고, 및 암호화한다. 게이트웨이 미디어 노드(Mb,f)에서, 데이터 패킷은 단일 채널 통신을 위해 영역(Z1) 보안 설정을 사용하여, 해독되고, 언스크램블링 동작(928)으로 언스크램블되며, 그 후 데이터 패킷으로 혼합된다. 그 후, 게이트웨이 미디어 노드(Mb,f)는 영역(U2) 보안 설정을 사용하여 단일 채널 데이터 패킷을 스크램블링하고 암호화하며, 그 후 상기 데이터를 클라이언트 노드(C2,1)에 포워딩한다. 태블릿(33)에서 동작하는 SDNP 가능 애플리케이션은 언스크램블링 동작(928) 및 영역(U2) 보안 설정을 사용하여 데이터를 해독하고, 그 후 언스크램블한다. 그 후, 데이터 패킷은 클라이언트로, 이 경우에는 태블릿(33)으로 전달된다.
전술한 바와 같이, 도시된 모든 통신 링크는 패드록 아이콘(1339)에 의해 도시된 바와 같이, 스크램블링 및 혼합과는 관계없이 암호화된 데이터를 운반한다. 상세한 암호화 및 해독 단계는 명확함을 위해 도시되지 않았다. 일 실시예에 있어서, 데이터 패킷은 데이터가 새로운 미디어 노드를 횡단할 때마다 해독되고 암호화된다(즉, 재암호화된다). 적어도, 재스크램블링을 수행하는 모든 미디어 노드에서, 입력 데이터 패킷은 언스크램블링 전에 해독되고, 그 후 스크램블되고, 암호화된다. 메시형 전송, 암호화 및 스크램블링(모든 영역 별 보안 설정 사용)으로 달성할 수 있는 사용 가능한 다층 보안의 요약이 이하의 표에 도시되어 있다.
보안 방법 클라우드
보안
라스트 마일
보안
클라우드에서 메시형 라우팅, 암호화+스크램블링 없음 1-D 없음
메시형 라우팅, 종단 간 암호화, 스크램블링 없음 2-D 1-D
메시형 라우팅, 종단 간 스크램블링+암호화 3-D 2-D
동적 메시형 라우팅, 종단 간 스크램블링+암호화 4-D 3-D
동적 메시형 라우팅, 종단 간 스크래블링+암호화+정크 4-D 3.5-D
위의 표에 도시된 바와 같이, 시간이 지남에 따라 전송 중 암호화 및 스크램블링에 동적 변경을 추가하는 것은, 사이버 범죄자가 패킷을 스니핑하고 또한 데이터 패킷을 판독하기 위해 "코드를 파괴하는" 시간을 제한함으로써 추가된 보안 수준을 부여한다. 동적 변경은 매일, 매시간 또는 예정된 기간이나 패킷 단위로 발생할 수 있으며, 대략 매 100 ms 마다 바뀐다. 위 표로부터, 라스트 마일이 클라우드를 통한 전송보다 덜 안전하다는 것이 분명한다.
라스트 마일 보안을 증가하는 하나의 방법은 정크 데이터 세그먼트를 데이터 스트림에 동적으로 삽입하고, 심지어는 디코이(decoy)로서 정크로만 구성된 패킷을 송신하여 쓸모없는 데이터를 디코딩함으로써 사이버 범죄자의 컴퓨팅 리소스를 낭비하는 것이다. 이러한 개선은 3-D 내지 3.5-D로의 변경에 의해 나타나며, 이는 정크 데이터를 삽입하는 것이 암호화, 스크램블링, 및 다중 루트 전송을 통해 달성되는 보안 향상만큼 좋지는 않지만, 그러나 특히 정크 삽입이 시간에 따라 변하고 그리고 들어오고 나가는 패킷이 다른 경우에 유용하다. 본 발명에 따라 SDNP 보안을 개선하는 다른 중요한 양태는 패킷 라우팅 중 본 발명에서 나중에 논의되는 토픽을 "잘못된 명령(misdirection)"을 사용하는, 즉 실제 소스 및 목적지를 모호하게 하는 것이다.
비밀, 키 및 시드 전달 - SDNP 기반 보안 통신은 외부 당사자가 알지 못하거나 이해하지 못하거나 의미나 목적을 이해하지 못하는 통신 당사자간의 정보를 교환하는 데 의존한다. 전송되는 데이터의 실제 콘텐트와는 별도로, 이 정보는 공유 비밀, 알고리즘, 암호화 및 해독 키 및 수치 시드를 포함할 수 있다. 여기에 사용되는 바와 같은 "공유된 비밀"은, 어떤 통신 당사자만 예를 들어 혼합, 스크램블링 및/또는 암호화 알고리즘, 암호화 및/또는 해독 키 및/또는 시드 생성기의 목록, 숫자 생성기 또는 시간에 따라 지정한 것을 선택하는 다른 방법의 목록을 알거나 공유하는 정보이다.
시간 및/또는 상태를 기반으로 하고 그 후 지정 알고리즘을 선택하는 데 사용되는 공유 비밀, 수치 시드와 함께 동작하는 것은, 다양한 옵션을 호출하거나 또는 알고리즘을 실행한다. 그 자체로, 임의의 지정 수치 시드는 아무런 의미가 없지만, 그러나 공유 암호와 조합되었을 때, 수치 시드는 가로채었다면 그 의미 또는 기능을 폭로하지 않고 네트워크를 갈로질러 동적 메시지 또는 상태를 통신하는 데 사용될 수 있다.
마찬가지로, 암호화된 통신을 실행하기 위해, 암호화는 통신 당사자에 의해 동의된 지정 알고리즘, 즉 공유 비밀, 및 암호화 및 해독에 사용되는 하나 또는 2개의 키의 교환을 요구한다. 대칭 키 방법에서, 암호화 키와 암호 해독 키는 동일하다. 대칭 키 교환은 키에 의해 제공된 공격에 탄력적이고, 길며, 즉 34 비트 또는 36 비트이며, 암호를 파괴하는 데 사용할 수 있는 시간은 짧으며, 즉 1초 또는 그 이하이다. 임의의 주어진 암호화 알고리즘에 대해, 키가 유효한 시간으로 나눈 대칭 암호화 키에 사용된 비트수의 비율은 암호화의 견고성을 측정한다. 따라서 대칭 키는, 이들이 크고 또한 암호화를 파괴하는 데 사용할 수 있는 시간이 짧다면, 동적 네트워크에 사용될 수 있다. 대안으로서, 암호화 알고리즘이 사용될 수 있으며, 여기서 상기 암호화 및 해독 키는 구별되거나, 또는 암호화를 위해 하나의 키 및 해독을 위한 다른 키를 갖는 "비대칭"이다. 공개 통신 채널에서, 비대칭 키는 암호화 키만 통신되고 암호화 키가 해독 키에 대해 정보를 제공하지 않기 때문에 유리하다. 실시간으로 동적으로 변하는 대칭 및 비대칭 암호화 키, 수치 시드 및 공유 비밀의 조합은 SDNP 통신에 탁월한 다차원 보안을 제공한다. 암호 방식에 대해 수많은 일반 참조가 가능하다[예를 들어 앨런 지. 콘하임(Alan G. Konheim)의 "컴퓨터 보안 및 암호 방식"(윌리, 2007년)]. 그러나 실시간 통신에 암호화를 적용하는 것은 간단하지 않으며, 또한 가능한 문헌에서 예상되지 않는다. 대부분의 경우 데이터 통신에 암호화를 추가하면 대기 시간과 전달 지연이 늘어나므로 네트워크의 QoS를 열화시킨다.
공유 비밀은 실제 코뮤니케, 메시지, 호출, 데이터 교환 전에 클라이언트 노드와 미디어 노드 사이에서 교환될 수 있다. 도 100a는 공유 비밀이 SDNP 실행 가능한 코드 설치와 함께 어떻게 배포될 수 있는지를 도시하고 있다. 영역(Z1) 내에서, 보안 소프트웨어 패키지(1352A)는 실행 가능한 코드(1351) 및 영역(Z1) 공유 비밀을 포함하며, 이는 시드 생성기(921), 번호 생성기(960), 알고리즘(1340), 암호화 키(1022) 및 해독 키(1030), 또는 일부의 그 조합을 포함할 수 있다. 실행 가능한 코드(1351) 및 공유 비밀(1350A)을 포함하는 영역(Z1)에 대한 보안 소프트웨어 패키지(1352A)는, 클라우드(1114)의 미디어 서버(1118)로, 또한 "DMZ"서버(1353A, 1353B) 모두로 전달된다. 미디어 노드(Ma,b, Ma,f)에서의 실행 가능한 코드 및 서버(1118)에 호스트된 다른 것의 설치는, 여기에서 DMZ 서버(1353A, 1353B)로서 지칭된 별도의 컴퓨터에서 영역(Z1)에 대한 공유 비밀, 즉 Z1 비밀(1350A)의 설치와 동시에 발생한다.
DMZ 라는 용어는 일반적으로 비무장 지대의 머리글자로, 이 경우에는 인터넷을 통해 직접 액세스할 수 없는 컴퓨터 서버를 의미한다. DMZ 서버는 미디어 노드로서 기능하는 하나 또는 다수의 네트워크 연결 서버를 제어할 수 있지만, 그러나 임의의 DMZ 서버-DMZ 서버(1353A, 1353B) 및 다른 것(도시되지 않음)에도 액세스할 수 없다. 모든 소프트웨어 및 공유 비밀 분배는 시간 클록된 패드록(1354)에 의해 도시된 바와 같이 단시간 동안만 유효한 보안 통신에서 발생한다. 소프트웨어 전달이 늦었다면, SDNP 관리자는 개인적으로 계정 소유자의 신원 및 자격 증명을 확인한 후, 영역(Z1)에 대한 보안 소프트웨어 패키지(1352A)의 다운로드를 재인증해야 한다.
자세히 설명하면, "인터넷에 직접 연결되지 않은 컴퓨터 서버"로서의 DMZ 서버에 대한 설명은 인터넷과 서버 사이에 간에 직접적인 전자적 연결이 없음을 의미한다. 실제로 Z1 파일 1352A는 인터넷을 통해 서버 또는 서버 팜에 전달될 수 있지만, DMZ 내로의 파일 설치는 서버 또는 서버 팜의 개입 계정 관리자가 계정 소유자와 협력하여 동작하는 중재를 요구한다. DMZ 내에 파일을 설치하기 전에 계정 관리자는 계정 소유자의 신원과 설치의 유효성을 확인한다.
설치를 확인한 후, 관리자는 관리자의 컴퓨터를 DMZ 서버에 직접 연결하는 LAN을 사용하여 Z1 비밀을 포함하는 파일을 DMZ 서버에 로딩한다. 따라서 LAN은 인터넷에 직접 연결되지 않지만, 그러나 엄격한 인증 과정을 거친 후 관리자의 컴퓨터를 통해 승인된 전송을 요구한다. 공유 비밀의 설치는 단방향이며, 파일은 인터넷으로부터의 읽기 액세스 없이 DMZ 서버로 다운로드된다. DMZ 콘텐트를 인터넷에 업로드하는 것도 마찬가지로 금지되며, 이에 따라 온라인 액세스나 해킹을 방지한다.
공유 비밀 설치 프로세스는 온라인 뱅킹을 사용할 수 없는 은행 계좌와 유사하지만, 그러나 클라이언트의 승인이 있어야만 은행 담당자가 전자 송금을 수동으로 수행할 수 있다. 인터넷 액세스를 거부함으로써, 공유 비밀을 가로채는 것은 전송 시 LAN 섬유가 식별되고, 연결되고, 및 가로채져야만 서버 팜에서 물리적 인입 및 현지 공격을 요구한다. 심지어 그 후 설치된 파일은 암호화되어, 짧은 기간 동안만 사용할 수 있다.
동일한 개념이 도 100b에 도시된 다중 영역 소프트웨어 개발에 연장될 수 있으며, 여기서 SDNP 관리 서버(1355)는 영역(Z1) 비밀(1350A)로서 영역(Z1)에 대한 보안 소프트웨어 패키지(1352A)를 DMZ 서버(1353A)에, 그리고 실행 가능한 코드(1351)로서 클라우드(1114)의 미디어 서버(1118)에 송신하는 데 사용된다. SDNP 관리 서버(1355)는 마찬가지로 영역(Z2)에 대한 보안 소프트웨어 패키지(1352B)를 DMZ 서버(1353B)에 영역(Z2) 공유 비밀(1350B)에서, 실행 가능한 코드(1351)로서 클라우드(1315)의 미디어 서버에 분배하는 데 사용된다. 또한, SDNP 관리 서버(1355)는 실행 가능한 코드(1351)를 포함하는 보안 소프트웨어 패키지(1352C)를 SDNP 클라우드(1114)의 브릿지 미디어 노드(Mb,f) 및 SDNP 클라우드(1315)의 Mb,n 에 전달하고, 영역(Z1, Z2)에 대한 공유 비밀(1350C)을 DMZ 서버(1353C)에 전달한다. SDNP 클라우드(1114)의 브릿지 미디어 노드(Mb,f) 및 SDNP 클라우드(1315) 내의 Mb,n은 관리 서버(1355)로부터 직접 실행 가능한 코드(1351)를 수신하고, 또한 DMZ 서버(1353C)로부터 영역(Z1) 및 영역(Z2) 공유 비밀을 수신한다. 브릿지 미디어 노드(Mb,f)가 Z1 과 Z2 사이의 변환을 수행하기 때문에, Z1 과 Z2의 공유 비밀 모두에 대한 액세스가 필요하다(그리고 다른 브릿지 서버는 도시되지 않음). 그렇지 않으면 영역(Z1)의 노드는 영역(Z1) 공유 비밀에만 액세스할 것을 요구하며, 또한 영역(Z2)의 노드는 영역(Z2) 공유 비밀에만 액세스할 것을 요구한다.
SDNP 관리 서버(1355)가 DMZ 서버(1353A, 1353B, 1353C)에 공유 비밀을 제공하는 반면에, SDNP 관리 서버(1355)는 전달 후에 공유 비밀에 어떤 일이 발생하는지에 대한 지식이 없으며, 또한 일단 전달되었다면 공유 비밀에 대해 임의의 명령 또는 제어 영향을 수행하지도 않음을 강조하는 것이 중요하다. 예를 들어, 알고리즘의 목록이 셔플되었다면, 즉 기록되었다면, 지정 알고리즘에 대한 어드레스가 변경되도록, SDNP 관리 서버(1355)는 셔플링이 어떻게 발생하는지에 대해 알지 못한다. 마찬가지로, SDNP 관리 서버(1355)는 통신 당사자 사이에서 수치 시드 또는 키 교환의 수신자가 아니며, 따라서 제어 지점을 나타내지 않는다. 실제로, 공개된 바와 같이, 전체 SDNP 네트워크의 서버는 패키지, 그 라우팅, 그 보안 설정, 또는 그 콘텐트와 관련된 모든 정보를 가지고 있지 않다. 따라서 SDNP 네트워크는 보안 글로벌 통신을 위한 완전히 분산된 독특한 시스템이다.
도 101a에 도시된 바와 같이, DMZ 서버로의 공유 비밀 전달은 엄격하게 정의된 프로세스에서 수행되며, 이에 따라 SDNP 관리 서버(1355)는 DMZ 서버(1353A)와의 통신을 설정하고, 그리고 인증 프로세스를 거쳐, 컴퓨터가 실제로 SDNP-인증된 DMZ 서버인지를 확인한다. 이 프로세스는 자동화될 수 있거나, 또는 은행 송금과 유사한 방식으로 계정 소유자의 인간 상호 작용 및 검증을 포함할 수 있다. 어느 경우든, 인증이 DMZ 서버(1353A)의 진본임을 확인했을 때만, 전자 인증 인증서(1357)가 생성되어, SDNP 관리 서버(1355)가 그 비밀 및 코드를 DMZ 서버(1353A)로 전송하는 것을 허용한다. 일단 로딩되었다면, 이들 설정은 미디어 서버(1361, 1362, 1363)로 전송되어, 들어오고 나가는 데이터 패킷을 어떻게 처리할지를 미디어 노드(M1, M2, M3)에게 명령한다.
동일한 DMZ 서버(1353A)는 2개 이상의 미디어 서버, 예를 들어 미디어 서버 어레이(1360)를 관리할 수 있으며, 또는 대안적으로 다중 DMZ 서버가 동일한 보안 설정 및 공유 비밀을 운반할 수 있다. 미디어 노드는 모두 시분할 및 로드 밸런싱(load balancing)을 사용하여 미디어, 콘텐트, 및 데이터를 협동하여 운반하도록 동작할 수 있다. 미디어 서버 어레이(1360) 상의 통신 로딩이 떨어졌다면, 미디어 노드(M3)는 개방형 스위치(1365A, 1365B)에 의해 기호로 표시된 바와 같이 오프라인으로 취해질 수 있어서, 폐쇄형 스위치(1364A, 1364B)로 도시된 바와 같이 미디어 노드(M2)를 여전히 개방된 상태로 남겨둔다. 상기 스위치는 특별한 서버의 입력 및 출력이 물리적으로 연결이 끊어졌음을 나타내고 있지는 않지만 그러나 서버가 더 이상 미디어 노드 애플리케이션을 실행하지 않아, 전력을 절약하고 불필요한 서버에 대한 호스팅 사용료를 제거한다. 도시된 바와 같이, 하나의 DMZ 서버(1353A)는 DMZ 서버(1353A)로부터 서버 어레이(1360)의 임의의 서버로 명령, 지령, 및 비밀 정보를 다운로드함으로써 2개 이상의 미디어 서버의 동작을 제어할 수 있지만, 그러나 그 역은 사실이 아니다. 정보를 획득하고, 미디어 서버로부터 DMZ 서버(1353A)의 콘텐트를 기록, 질의 또는 검사하기 위한 시도는 방화벽(1366)에 의해 차단되어, 미디어 노드를 거쳐 인터넷을 통해 DMZ 서버(1353A)의 콘텐트가 검사되거나 발견될 수 없음을 의미한다.
공유 비밀에 기초한 본 발명에 따른 보안 통신의 예가 도 101b에 도시되어 있으며, 여기서 임의의 통신 전에 영역(Z1)에 대한 공유 비밀(1350A)이 관리 서버(도시되지 않음)에 의해 영역(Z1) 내의 DMZ 서버(1353A, 1353B)를 포함하는 모든 DMZ 서버에 공급된다. 이러한 공유 비밀은 시드 생성기(921), 번호 생성기(960), 알고리즘(1340), 암호화 키(1022) 및 해독 키(1030)를 제한 없이 포함할 수 있다. 미디어 서버(1118)에 의해 호스트된 송신 미디어 노드(Ms)와 수신 미디어 노드(MR) 사이의 통신 중, DMZ 서버(1353A)는 데이터(1341) 및 상태(920)를 포함하는 페이로드 패킷(1342)을 준비하기 위해 공유 비밀을 송신 미디어 노드(Ms)로 통과시켜, 시간 페이로드 패킷(1342)이 생성되었음을 설명한다. 미디어 노드(MS)로부터 송신되기 전에, 페이로드 패킷(1342)은 패드록에 의해 기호로 제공된 암호화 동작(1339)을 사용하여 암호화된다.
보안 페이로드 패킷(1342)의 수신에 따라, 수신 미디어 노드(MR)는 DMZ 서버(1353B)에 의해 공급된 공유 비밀(1350A) 내에 포함된 해독 키(1030)를 사용하여 패킷(1342)을 해독하고, 그 후 데이터 패킷(1342)에 지정한 상태 정보(920)를 사용하여 데이터(1341)를 복구한다. 대안적인 실시예에 있어서, 수치 시드(929)는 일시적으로, 즉 페이로드 패킷(1342)의 통신 전에, 일시적인 생명을 가진 수치 시드(929)로서 미디어 노드(MS)를 수신 미디어 노드(MR)로 송신할 수 있다. 일정 시간 내에 사용되지 않았다면, 또는 페이로드 패킷(1342)이 지연되었다면, 시드의 수명이 만료되고 자체 파괴되어, 미디어 노드(MR)가 페이로드 패킷(1342)을 열 수 없게 한다.
시드 및 전달된 패킷 내에 캡슐화된 키와 조합된 공유 비밀에 기초한, 본 발명에 따른 보안 통신의 다른 예가 도 101c에 도시되어 있다. 이 예에 있어서, 임의의 통신에 앞서, 영역(Z1)에 대한 공유 비밀(1350A)은 서버(1353A, 1353B)를 포함하는 모든 영역(Z1) DMZ 서버에 공급된다. 이러한 공유 비밀은 시드 생성기(921), 번호 생성기(960) 및 알고리즘(1340)을 제한 없이 포함할 수 있지만, 그러나 이들은 암호화 키(1022) 및 해독 키(1030)와 같은 키를 포함하지 않는다. 미디어 서버(1118)에 호스트된 송신 미디어 노드(MS)와 수신 미디어 노드(MR) 사이의 통신 중, DMZ 서버(1353A)는 데이터(1341), 상태(920)[시간 페이로드 패킷(1342)이 생성되었음을 설명하는], 및 암호화 키(1022)(미래 페이로드 패킷을 암호화하기 위해 사용되는)를 포함하는 페이로드 패킷(1342)을 준비하기 위해, 공유 비밀을 송신 미디어 노드(MS)를 통과시킨다. 라우팅 전에, 페이로드 패킷(1342)은 패드록에 의해 기호로 표현된 암호화 동작(1339)을 사용하여 암호화된다.
보안 페이로드 패킷(1342)의 수신에 따라, 수신 미디어 노드(MR)는 암호화 키(1030)를 사용하여 패킷(1342)을 암호화하며, 이는 일시적인 수명을 가지며 또한 선험적으로, 즉 페이로드(1342)의 통신 이전에, 송신 미디어 노드(MS)와 수신 미디어 노드(MR) 사이의 별도의 통신으로 공급되었다. 이 초기 데이터 패킷은 다른 해독, 동적 알고리즘, 수치 시드 또는 그 조합과 같은 공유 비밀에 의해 보안될 수 있다. 해독 키(1030)가 일정 시간 내에 사용되지 않았다면, 또는 데이터 패킷(1342)이 지연되었다면, 해독 키(1030)는 만료되고 자체 파괴되어 미디어 노드(MR)가 페이로드 패킷(1342)을 열 수 없게 한다. 암호화 키(1030)가 페이로드 패킷(1342)에 선택적으로 포함되지만, 이 기술은 선호되지 않는다.
콘텐트와의 모든 보안 관련 정보를 전달하는 것을 피하는 하나의 방법은, 콘텐트 전달에 사용된 미디어 통신 채널로부터 명령 및 제어 신호를 전달하는 데 사용되는 채널을 분할하고 분리하는 것이다. 본 발명에 따르면, 도 102에 도시된 이러한 "이중-채널" 통신 시스템은 미디어 서버에 의해 운반되는 미디어 채널, 및 여기에 시그널링 서버로서 지칭되는 제2 컴퓨터 네트워크에 의해 운반되는 명령 및 제어 채널을 포함한다. 통신 중, 설치된 SDNP 소프트웨어를 동작하는 시그널링 서버(1365)는 명령 및 제어 신호를 운반하기 위한 시그널링 노드(S1)로서 동작하고, 설치된 SDNP 소프트웨어를 동작하는 미디어 서버(1361, 1362, 1363)는 콘텐츠 및 미디어를 운반하기 위한 미디어 노드(M1, M2, M3)로서 각각 동작한다. 이러한 방식으로, 미디어 채널은 명령 및 제어 신호를 전달하지 않으며, 명령 및 제어 신호는 페이로드와 조합된 미디어 채널을 통해 또는 별도로 메시지 콘텐트를 포함하는 데이터 패킷의 미리 전달된 선험적 데이터 패킷으로서 전달될 필요가 없다.
동작 시, 패킷은 서버 어레이(1360)로의 들어오는 패킷으로서 기대되는 미디어 패킷에 대한 라우팅 및 보안 설정을 기재하는 시그널링 노드(S1)로 전달된다. 이들 특수 목적 패킷은 여기에 "명령 및 제어 패킷"으로 지칭된다. 통신 중, 명령 및 제어 패킷은 미디어 노드(M1, M2, M3)에게 들어오고 나가는 데이터 패킷을 각각 어떻게 처리할지를 명령하는 미디어 서버(1361, 1362, 1363)에 송신된다. 이들 명령은 DMZ 서버(1353A) 내에 상주하는 정보와 조합된다. 전술한 바와 같이, 동일한 DMZ 서버(1353A)는 2개 이상의 미디어 서버, 예를 들어 미디어 노드 어레이(1360)를 관리할 수 있다. 상기 미디어 노드는 시분할 및 로드 밸런싱을 사용하여 미디어, 콘텐트 및 데이터를 협력하여 운반하도록 모두 동작할 수 있다. 미디어 서버 어레이(1360) 상의 통신 로딩이 떨어졌다면, 미디어 노드(M3)는 폐쇄형 스위치(1365A, 1365B)로 표시된 바와 같이 오프라인으로 취해질 수 있어서, 폐쇄형 스위치(1364A 및 1364B)로 표시된 바와 같이 미디어 노드(M1, M2)를 여전히 동작시킨다. 미디어 노드 스위치는 특별한 서버의 입력과 출력이 물리적으로 분리되었음을 나타내지는 않지만, 그러나 서버가 더 이상 미디어 노드 애플리케이션을 동작하지 않아, 전력을 절약하고 불필요한 서버에 대한 호스팅 사용료를 제거한다.
도시된 바와 같이, 시그널링 서버(1365)와 함께 동작하는 하나의 DMZ 서버(1353A)는 DMZ 서버(1353A)로부터 임의의 서버 어레이(1360)로의 명령, 지령 및 비밀 정보를 다운로드함으로써 2개 이상의 미디어 서버의 동작을 제어할 수 있지만, 그러나 서버는 진실하지 않다. 시그널링 서버(1365)로부터 또는 미디어 서버(1361, 1362, 1362)로부터 DMZ 서버(1353A)의 콘텐츠를 기록, 질의 또는 검사하기 위한 임의의 시도는 방화벽(1366)에 의해 차단되어, DMZ 서버(1353A)의 콘텐트가 미디어 노드를 거쳐 인터넷을 통해 검사되거나 발견되지 않았음을 의미한다.
따라서 이중 채널 통신 시스템에서, 통신 네트워크의 명령 및 제어는 상이한 통신 채널, 즉 메시지의 콘텐트와는 별개의 고유한 라우팅을 사용한다. 시그널링 서버의 네트워크는, 미디어 서버가 메시지의 실제 내용을 전달할 동안, 네트워크에 대한 모든 명령 및 제어 정보를 전달한다. 명령 및 제어 패킷은 시드, 키, 라우팅 명령, 우선순위 설정 등을 포함할 수 있지만, 미디어는 음성, 텍스트, 비디오, 전자 메일 등을 포함한다.
이중 채널 통신의 하나의 이점은 데이터 패킷이 그 본래의 발신지 또는 궁극적인 목적지에 대한 정보를 포함하고 있지 않다는 것이다. 시그널링 서버는 "알 필요"가 있는 들어오는 각각의 데이터 패킷에 무엇을 할지를 알려주며, 즉 이를 송신한 노드의 어드레스에 의해 들어오는 패킷을 어떻게 식별할지, 또는 대안적으로 SDNP "우편 번호"에 의해 이에 무엇을 할지, 및 이를 어디로 송신할지를 알려준다. 이 방법에서, 패킷은 클라우드에서 그 마지막 홉 및 그 다음 홉에 속한 것보다 더 많은 라우팅 정보를 결코 포함하지 않는다. 마찬가지로 상기 시그널링 서버는 명령 및 제어 정보를 운반하지만, 그러나 데이터 패킷의 콘텐트 또는 미디어 채널에서 발생하는 임의의 통신에 액세스할 수 없다. 콘텐트 없는 제어, 및 라우팅 없는 콘텐트의 이런 분할은, 이중 채널 SDNP 기반 네트워크에 탁월한 보안 수준을 부여한다.
본 발명에 따른 이중 채널 보안 통신의 예가 도 103a에 도시되어 있으며, 여기서 시드(929) 및 해독 키(1080)를 포함하는 명령 및 제어 데이터 패킷은 미디어 서버 및 콘텐츠가 미디어 서버(1118) 사이에 통신되는 동안 시그널링 서버(1365)에 의해 통신된다. 이 예에 있어서, 임의의 통신 전에, 영역(Z1) 비밀 정보(1350A)는 서버(1353A, 1353B)를 포함하는 영역(Z1) DMZ 서버에 제공되는 데, 이런 공유 비밀은 시드 생성기(921), 번호 생성기(960) 및 알고리즘을 제한 없이 포함하지만, 그러나 암호화 키(1030)와 같은 키를 포함하지 않는다. 통신 개시 전에, 성신 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(Ss)는 수치 시드(929) 및 해독 키(1030) 또는 다른 보안 세팅을 포함하는 명령 및 제어 패킷을 목적지 시그널링 노드(Sd)에 송신한다. DMZ 서버(1353A, 1353B)에 포함된 공유 비밀 및 보안 설정과 조합된 이 정보는 송신 미디어 노드(MS)가 암호화된 페이로드(1342)를 수신 미디어 노드(MR)로 어떻게 전송해야 하는지를 명령하는 데 사용된다. 페이로드(1342) 정보의 암호화는 패드록(1339)에 의해 예시된다.
이러한 방식으로, 통신되는 데이터(1341)와 별도로, 페이로드 패킷(1342) 내에 포함된 보안 관련 데이터는 페이로드 패킷(1342)이 생성된 시간을 설명하는 상태(920)이다. 일단 페이로드 패킷(1342)이 수신 미디어 노드(MR)에 도착하였다면, 이는 해독 키(1030)에 의해 해독된다. 해독된 후, DMZ 서버(1353B)에 의해 공급된 상태 정보(920) 및 공유 비밀(1350A)과 조합된 시드(929)는 이미 기재된 방법에 따라 페이로드(1342) 및 다른 들어오는 데이터 패킷(1342)을 언스크램블링하고, 혼합하고, 분할하는 데 사용된다. 데이터 패킷은 이것이 마지막 수정된 시간 정보, 즉 해독 키를 국부적으로 생성하는 데 특히 유용한 상태 정보를 운반할 수 있더라도, 명령 및 제어 채널을 통해 전송된 시드의 동시 사용은 들어오는 데이터에 대해 이미 수행된 분할 및 언스크램블링 동작을 식별할 수 있게 하지만, 그러나 직전 노드에서 한 번에 필수적으로 수행되지는 아니다.
도 103b에 도시된 대안적인 실시예에 있어서, 수치 시드(929)는 미디어 채널을 통해 선험적으로, 즉 페이로드 패킷(1342) 전에 전달되지만, 그러나 해독 키(1030)는 여전히 시그널링 채널을 통해 전달된다. 따라서 전달 방법의 조합 또는 순열은 안전하게 통신하기 위해 가능하다. 대안으로서, 시드, 키 및 기타 동적 보안 설정의 전달은 시간이 지남에 따라 달라질 수 있다.
앞에서 설명한 종단 간 보안을 용이하게 하기 위해, 실행 가능한 코드, 공유 비밀, 및 키가 클라이언트에 설치되어야만 하며, 전형적으로는 애플리케이션으로서 다운로드되어야 한다. SDNP 네트워크에 사용된 공개 보안 설정을 방지하기 위해, 이들 다운로드는 클라이언트와 통신하는 클라우드 게이트웨이 노드에서만 알려진 별도의 영역에 정의된다. 도 104에 도시된 바와 같이, 휴대폰(32)과 같은 모바일 디바이스가 SDNP 클라우드를 사용하여 통신할 수 있도록, 이는 먼저 인증된 SDNP 클라이언트가 되어야만 한다. 이 단계는 제한된 시간 윈도우에만 유효한 보안 다운로드 링크(1354)를 사용하여, SDNP 관리 서버(1355)로부터 클라이언트 노드(C1,1), 즉 휴대폰(32)으로 영역(U1) 소프트웨어 패키지(1352D)를 다운로드하는 단계를 포함한다. 다운로드가 너무 길어 완료할 수 없거나 사용자가 진정한 디바이스이고 클라이언트인체하는 해커의 컴퓨터가 아님을 확인하는 어떤 인증 기준에 부합할 수 없다면, 파일은 결코 해독되거나 휴대폰(32)에 설치되지 않는다. 영역(U1) 소프트웨어 패키지(1352D) 내에 포함되는 것은, 코드가 설치되는 휴대폰(32) 또는 다른 디바이스의 OS, 예를 들어 iOS, 안드로이드, 윈도우즈, MacOS, 등에 지정한 실행 가능한 코드(1351), 및 시드 생성기(921), 번호 생성기(960), 알고리즘(1340), 암호화 키(1022) 및 해독 키(1030), 및 클라이언트 영역(U1)에 지정한 모든 것을 포함하는 영역(U1) 비밀(1350D)이다.
임의의 영역(U1) 외부 클라이언트 노드(C1,1)가 영역(Z1) SDNP 클라우드(1114)와 통신하기 위해, 미디어 노드(Ma,d)와 같은 게이트웨이 노드는 영역(U1, Z1) 다운로드 패키지 내에 포함된 바와 같이 영역(Z1) 및 영역(U1) 보안 설정에 관한 정보를 수신해야 한다. 패드록(1354)에 의해 표시된 시간 제한적 보안 다운로드 방법을 사용하여, 영역(Z1) 및 영역(U1) 비밀 모두는 링크(1350C)를 통해 DMZ 서버(1353C)로 다운로드되고, 또한 실행 가능한 코드(1351)는 링크(1351)를 통해 다운로드되어 SDNP 미디어 노드 클라우드(1114)와 외부 클라이언트 사이의 연결, 즉 라스트 마일 연결을 지원하는 연결을 수행하기 위해 요구되는 임의의 다른 영역(Z1) 미디어 노드뿐만 아니라, SDNP 미디어 노드(Ma,d) 내에 설치된다. 일단 영역(Z1)의 미디어 노드(Ma,d)와 영역(U1) 내의 클라이언트 노드(C1,1) 모두가 각각 다운로드 패키지(1352E, 352D)의 콘텐트로 각각 로딩되었다면, 암호화 통신 동작(1339)을 포함하는 보안 통신(1306)이 수행될 수 있다.
미디어 서버(1118) 상에 호스트된 영역(Z1)의 보안 클라우드로부터 영역(U1)에서의 휴대폰(32)과 같은 외부 디바이스 상에 호스트된 클라이언트 노드(C1,1)로의 통신이 단일 통신 채널을 통해 발생할 수 있기 때문에, 클라우드(1114) 내에 사용된 이중 채널 통신을 라스트 마일에 필요한 단일 채널 통신으로 변환하기 위해 일부 수단이 요구된다. 이중 채널 대 단일 채널 변환의 실행 시 SDNP 게이트웨이 노드의 역할의 예가 도 105a에 도시되어 있으며, 여기서 시그널링 서버(1365)의 시그널링 노드(Sd)에 들어가는 영역(Z1) 명령 및 제어 패킷은 상태(920)를 포함하는 영역(U2) 보안 설정과 함께 데이터(1341)를 포함하고, 데이터 패킷(1342)이 생성되었던 시간, 수치 시드(929), 및 다음 패킷, 즉 노드(C1,1)에 의해 생성될 패킷을 암호화하는 데 사용되는 암호화 키(1022)를 제공하는, 페이로드 패킷6(1342)과의 단일 채널 통신을 생성하기 위해 게이트웨이 미디어 노드(MR)에서의 미디어 콘텐트와 조합된다.
페이로드 패킷(1342)은 암호화 동작(1339)을 사용하여 암호화된다. 페이로드 패킷(1342)을 해독하기 위해, 해독 키(1030)가 사용되어야만 하며, 여기서 상기 해독 키(1030)는 시드 생성기(921), 번호 생성기(960), 및 알고리즘과 같은 다른 영역(U1) 비밀과 함께 보안 애플리케이션 및 데이터 볼트(vault)(1359) 내로 이미 다운로드된 여러 개의 공유된 영역(U1) 비밀(1350D) 중 하나를 포함한다. 대안적으로, 도 105b에 도시된 바와 같이, 선험적 시드(929)가 먼저 전달되고, 그 후 스크램블된 해독 키(1030)를 언스크램블하는 데 사용될 수 있으며, 이는 다시 페이로드(1342)를 해독하는 데 사용된다. 그 후, 상태(920)는 라스트 마일 통신에서의 보안 단절과 싸우기 위해 다중 장벽을 제공하는 데이터(1341)를 해독하거나 언스크램블하는 데 사용될 수 있다.
클라이언트에 의해 반복적으로 사용되는 알고리즘의 패턴 인식을 방지하기 위해, 클라이언트 상에 설치된 알고리즘의 목록으로부터 알고리즘을 선택하는 데 사용된 어드레스 또는 코드는 본 발명에 따라 규칙적인 스케줄, 예를 들어 주별로, 일별로, 시간별로 변경된다. "셔플링"으로서 지칭되는 이 기능은 데크에서 카드 순서의 셔플링과 비슷하고 또한 네트워크 내에서 수행된 셔플링과 유사한 방식으로 발생한다. 셔플링은 이런 알고리즘의 표가 스크램블링, 혼합, 또는 암호화를 포함하는지의 여부와는 관계없이, 알고리즘의 표에서의 임의의 주어진 알고리즘을 식별하는 데 사용된 번호를 재정렬한다. 도 106에 도시된 바와 같이, 예를 들어 휴대폰(32) 상에 호스트된, 클라이언트 노드(C1,1)에서의 임의의 알고리즘 표를 셔플링하기 위해, SDNP 클라우드가 새로운 알고리즘 어드레스를 해석할 수 있음을 보장하면서, 시그널링 노드(SS)를 호스트하는 시그널링 서버(1365)는 수치 시드(929)를 클라이언트 노드(C1,1)에 전송하고, 이는 다시 상기 시드를 영역(U1) 번호 생성기(960) 내로 공급한다. 결과적인 번호는 셔플링 알고리즘(1312)을 트리거하여, 영역(U1) 알고리즘 표(1368A)를 새로운 영역(U1) 알고리즘 표(1368F)로 변환하고, 수정된 표를 클라이언트 노드(C1,1)에 위치된 보안 애플리케이션 및 데이터 레지스터(1359)에 저장하는 데 사용된다. 시그널링 서버(도시되지 않음)는 셔플링 프로세스를 스케줄링하는 데 사용된 스케줄 시간(1310) 및 이벤트 날짜(1311)로부터 도출된 상태 정보에 기초하여 수치 시드(929)를 생성한다. 동일한 상태 및 날짜 정보는 DMZ 서버(1353A)의 표를 셔플링하여, 클라우드 및 클라이언트 알고리즘 표가 동일하고 동기화되는 것을 보장하는 데 사용된다.
클라우드로부터 클라이언트 노드(C1,1)로 보안 설정을 통과시키는 개선된 방법이 도 107에 도시되어 있으며, 여기서 미디어 서버(1118)에 의해 호스트된 미디어 노드(MR)는 클라이언트 노드(C1)에 수치 시드(929)를 전송하며, 별도의 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(Sd)는 암호화 키(1030)를 클라이언트 노드(C1,1)에 전송한다. 이 방법의 이점은 해독 키(1030)가 수치 시드(929) 및 페이로드 패킷(1342)과는 상이한, 다른 SDNP 패킷 어드레스를 갖는 소스로부터 온다는 점이다. 가능한 단점은 통신 경로가 상이함에도 불구하고, 많은 경우에 있어서 두 네트워크 채널이 동일한 물리적 매체에 의해, 예를 들어 휴대폰(32)으로의 단일 WiFi 또는 LTE 연결에 의해 운반될 확률이 높다는 점이다. 시그널링 서버(1365)로부터 클라이언트 노드C1,1)로의 전송 전에, 해독 키(1030)를 스크램블링 또는 암호화하는 것은 이 결함을 상당히 바로잡을 수 있으므로, 이것은 패킷 스니핑에 의해 가로채지거나 판독될 수 있다.
동작 시, 미디어 노드(MR)로부터 클라이언트 노드(C1,1)로 미디어 채널을 통해 통과된 수치 시드(929)는 알고리즘 표(1340)로부터 해독 알고리즘을 선택하고, 또한 패드록(1339C)에 의해 도시된 해독 키(1030) 상의 보안을 해제하는 데 사용된다. 일단 언로킹되었다면, 해독 키(1030)는 암호화 동작(1339B)에 의해 페이로드 패킷(1342) 상에 수행된 암호화를 언로킹하는 데 사용된다. 영역(U1) 비밀(1350D)과 관련하여 수치 시드(929)는 클라이언트 노드(C1,1)에 의한 사용을 위해 데이터(1341)를 복원하는 데 사용된다.
비대칭 키 교환이 사용되었다면, 도 108에 도시된 바와 같이, DMZ 서버(1353A)는 비밀 해독 키(1030A) 및 공개 암호화 키(1370A)를 포함하는 비대칭 키 쌍을 생성한다. 해독 키(1030A)는 비밀을 DMZ 서버에 영역(Z1) 비밀로서 존재하며, 공개 암호화 키(1370A)는 시그널링 노드(Sd)를 통해 키 교환 서버(1369)로 통과된다. 상기 키 교환 서버(1369)는 필요해질 때까지 암호화 키(1370A)를 유지하고, 그 후 필요에 따라 이를 클라이언트 디바이스(1335)로 통과시킨다. 클라이언트 노드가 미디어 노드(MR)로 전송될 페이로드 데이터 패킷(1342)을 준비할 때, 먼저 키 교환 서버(1369)로부터 영역(Z1) 암호화 키(1370A)를 다운로드하며, 시그널링 서버가 클라이언트 노드(C1,1)로 암호화 키를 직접 통과시킬 수 있지만, 키 교환 서버를 사용하면 많은 이점이 존재한다. 공개 키 교환 서버를 사용하는 첫 번째 이점은, 명백한 시야에 숨어 있는 이점, 즉 "번호의 안전함"이다. 공개 키 서버가 잠재적으로 수백만 개의 암호화 키를 발행하기 때문에, 침입자가 권한없는 대화를 해킹하기 위해 어떤 키를 요청해야 할지를 알 수 있는 방법이 없다. 일부 기적에 의해 이들이 올바른 키를 선택하더라도, 암호화 키는 이들이 메시지를 해독하는 것이 아니라 메시지를 해독하는 것만을 허용한다. 세 번째로, 공개 키의 배포는 키를 배포하고 배달을 확인해야 하는 부담으로부터 시그널링 서버를 자유롭게 한다. 마지막으로 공개 키 교환 서버를 사용함으로써, 사이버 해적이 암호화 키가 어디로부터 왔는지를 추적할 방법이 없어서, 그 시그널링 서버를 통해 발신자를 추적하는 것을 어렵게 한다.
암호화 키(1370A)를 얻은 후, 클라이언트 디바이스(1335)상의 노드(C1,1)는 선택된 암호화 알고리즘 및 암호화 키(1371B)를 사용하여 페이로드 패킷(1342)을 암호화한다. 미디어 노드(MR)가 DMZ 서버(1353A)로부터 해독 키(1030)에 액세스하기 때문에, 페이로드 패킷(1342)을 언로킹하고 파일을 판독할 수 있다. 역으로, 영역(U1) 비밀(1350D)은 클라이언트 노드(C1,1)로부터 키 교환 서버(1369)로 전달된 암호화 키(도시되지 않음)에 대응하는 해독 키(1030)를 포함한다. 미디어 노드(MR)가 클라이언트 노드(C1,1)에 대한 데이터 패킷을 준비할 때, 이는 영역(U1) 암호화 키(1370A)를 수신하고, 그 후 클라이언트 노드(C1,1)로의 전달을 위해 페이로드 패킷(1342)을 암호화한다. 휴대폰(32)이 영역(U1) 암호 해독 키(1030)를 포함하는 영역(U1) 비밀에 액세스하기 때문에, 페이로드 패킷(1342)을 해독하고 판독할 수 있다.
전술한 지정 방법 및 그 다른 조합에서, 소프트웨어, 공유 비밀, 알고리즘, 번호 생성기, 수치 시드, 및 비대칭 또는 대칭 암호화 키의 전달을 포함하는 보안 통신은 본 발명에 따라 실현될 수 있다.
SDNP 패킷 전송 - 본 발명에 따른 보안 통신의 다른 발명 양태는 사이버 공격자가 데이터 패킷 또는 명령 및 제어 패킷이 어디로부터 왔는지, 그리고 목적지가 어디인지, 즉 실제 소스 및 최종 목적지가 위장되어, 단지 단일 홉의 소스 및 목적지만 나타내는지에 대한 무능력이다. 더욱이, 단일 SDNP 클라우드 내에서, 채택된 SDNP 어드레스는 인터넷에서 유효한 실제 IP 어드레스가 아니며, 단지 NAT 어드레스와 비슷한 방식으로 SDNP 클라우드에서 의미를 갖는 로컬 어드레스일 뿐이다. NAT 네트워크의 데이터 전송과는 달리, SDNP 네트워크를 통한 데이터 라우팅 중, 데이터 패킷 헤더의 SDNP 어드레스는 각각의 노드-노드 홉 후에 재기입된다. 더욱이, 미디어 노드는 이것이 온 마지막 미디어 노드 및 이것이 갈 다음 미디어 노드 이외에는 데이터 노드의 라우팅을 알지 못한다. 프로토콜은 이전에 기재된 단일 채널 및 이중 채널 통신의 예에 기초하여 상이하지만, 그러나 라우팅 개념은 공통적이다.
단일 채널 전송 - 단일 채널 통신의 일례가 도 109에 도시되어 있으며, 여기서 데이터 패킷은 각각 SDNP 가능 애플리케이션(1335)을 동작시키는 태블릿(33) 및 휴대폰(32)을 연결하는 SDNP 메시형 네트워크를 통해 전송된다. 클라이언트 노드(C2,1)로부터 클라이언트 노드(C1,1)로의 보안 통신에 있어서, 데이터는 클라이언트 노드(C2,1)로부터 미디어 노드(Ma,f)로 영역(U2)의 단일 채널 라스트 마일 라우팅을 횡단하고, 게이트웨이 미디어 노드(Ma)로부터 게이트웨이 미디어 노드(Ma,d)로 영역(Z1) SDNP 클라우드의 메시형 라우팅이 뒤따르며, 미디어 노드(Ma,d)로부터 클라이언트 노드(C1,1)로 영역(U1)에서 단일 채널 라스트 마일 라우팅으로 종료된다. 데이터 패킷(1374B)은, 패킷이 소스 IP AddrTB로부터 IP AddrMF로, 즉 미디어 서버(1220F)에 대한 IP 어드레스로 전송되는 IP 어드레싱을 도시하고 있다.
이들 라스트 마일 어드레스는 실제 IP 어드레스를 나타낸다. 일단 영역(Z1) 클라우드에 들어가면, SDNP 패킷(1374F)의 소스 IP 어드레스는 인터넷에서 의미 없는 NAT 타입 어드레스인 의사-IP 어드레스 SDNP Addr MF로 변경된다. 단순함을 위해 네트워크 라우팅이 단일 홉을 포함한다고 가정하면, 목적지 어드레스는 의사 IP 어드레스이며, 이 경우에는 SDNP Addr MD 이다. 영역(U1)의 라스트 마일에 대해, SDNP 패킷(1374G)에 도시된 어드레스는 IP 어드레스 MD의 소스 어드레스 및 목적지 IP 어드레스 CP와 함께 실제 IP 어드레스로 되돌아간다. 실시간 패킷 전송에서, 모든 SDNP 미디어 패킷은 TCP 가 아닌 UDP를 사용한다. 기재된 바와 같이, 페이로드는 라스트 마일 영역(U2)에서 영역에 의해 변화되고, SDNP 미디어 패킷(1374B)의 페이로드는 U2 SDNP 패킷을 포함하며, 메시형 네트워크 및 SDNP 클라우드 영역(Z1)에서 SDNP 미디어 패킷(1374F)의 페이로드는 Z1 SDNP 패킷을 포함하고, 라스트 마일 영역(U1)에서 SDNP 미디어 패킷(1374G)의 페이로드는 U1 SDNP 패킷을 포함한다. 따라서 인터넷 통신과는 달리, SDNP 미디어 패킷은 어드레스, 포맷, 및 콘텐트가 변하는 진화하는 페이로드이며, 또한 이는 통신 네트워크를 횡단한다.
도 110a 내지 도 110f는 단일 채널 SDNP 통신이 어떻게 발생하는지를 도시하는 일련의 흐름도를 포함한다. 단일 채널 애드혹 통신에 있어서, 통신 당사자는 세션을 생성하고 그 후 데이터 또는 음성을 전송하도록, 단일 채널, 즉 미디어 채널을 통해 정보를 순서대로 교환한다. 도 110a의 단계(1380A)에 도시된 바와 같이, 클라이언트는 SDNP 가능 애플리케이션(1335)을 열고, 디폴트 SDNP 서버 표(1375) 상에 열거된 임의의 SDNP 디폴트 미디어 서버와의 대화를 시작한다. 디폴트 SDNP 서버, 이 경우에는 미디어 서버(1120S), 호스팅 미디어 노드(Ma,s) 중 임의의 하나는 인증된 클라이언트가 호출을 개시하거나 SDNP 네트워크를 사용하여 세션을 확립하기를 원할 때마다 제1 접촉 번호로서 사용된다. 단일 채널 통신에 있어서, 서버(1220S)는 2개의 기능, 즉 새로운 발신자로부터의 최초 접촉을 위한 디폴트 서버로서의 기능 및 이미 시작된 호출을 운반하기 위한 미디어 서버의 기능을 동시에 수행한다. 대안적인 실시예에 있어서, 별도의 전용 "네임 서버"는 호출이 시작될 때가 아니라, 디바이스가 네트워크 상에 먼저 연결, 즉 등록할 때마다, 제1 접촉으로서 동작하는 데 사용된다. 본 발명에 따른 네임 서버의 사용은 나중에 본 출원에 기재된다.
클라이언트의 SDNP 지원 애플리케이션(1335)은 개인 사설 메신저 또는 휴대폰, 태블릿 또는 노트북 상에서 동작하는 보안 이메일과 같은 SDNP 지원 보안 애플리케이션일 수 있다. 대안적으로, 클라이언트는 매립형 SDNP 소프트웨어를 동작하는 보안 하드웨어 디바이스를 포함할 수 있다. SDNP 매립형 디바이스는 자동차 텔레매틱스 터미널; 신용카드 거래를 위한 POS 단말기; 전용 SDNP 가능 IoT 클라이언트 또는 SDNP 라우터를 포함할 수 있다. 여기에 기재된 SDNP 라우터는 SDNP 소프트웨어를 동작하지 않는 임의의 디바이스를 보안 SDNP 클라우드, 예를 들어 연결하는 데 사용되는 임의의 노트북, 태블릿, e- 리더, 휴대폰, 게임, 이더넷, WiFi 또는 블루투스 연결 디바이스 가젯에 연결하는 데 사용되는 범용 하드웨어 주변 기기이다.
클라이언트 애플리케이션(1335)이 디폴트 SDNP 서버 중 하나와 접촉한 후, 이는 다음에 SDNP 게이트웨이 노드로 재지향된다. 게이트웨이 노드는 클라이언트의 위치와 서버 사이의 그 물리적 근접성, 가장 낮은 네트워크 트래픽, 또는 가장 짧은 전파 지연 및 최소 대기 시간을 갖는 경로로서 선택될 수 있다. 단계(1380B)에서, 디폴트 SDNP 서버(1220S)는 클라이언트의 연결을 SDNP 게이트웨이 미디어 노드(Ma)를 호스트하는 최상의 선택인 SDNP 게이트웨이 미디어 서버(1220F)로 재지향시킨다. 그 후, 게이트웨이 미디어 노드(Ma,f)는 양 당사자의 인증서(1357)를 인증하고, 사용자를 확인하고, 통화가 무료인지 또는 프리미엄 기능인지를 확인하고, 가능하다면 계정의 지불 상태를 확인한 후 SDNP 세션을 시작한다.
단계(1380C)에서, 클라이언트 애플리케이션(1335)은 게이트웨이 미디어 서버(1220F)로 지향된 루트 질의(1371)를 사용하여 호출 목적지, 즉 호출될 사람 또는 디바이스에 대한 어드레스 및 라우팅 정보를 요청하는 초기 SDNP 패킷(1374A)을 전송한다. 루트 질의(1371)를 포함하는 SDNP 패킷(1374A)이 실시간 통신(즉, 데이터 패킷) 보다는 명령 및 제어 패킷을 나타내기 때문에, 이는 UDP 보다는 TCP를 사용하여 전달된다. 루트 질의(1371)는 전화번호, SDNP 어드레스, IP 어드레스, URL 또는 SDNP 지정 코드, 예를 들어, 목적지 디바이스, 이 경우에는 휴대폰(32)의 전화번호를 포함하여, 접촉 정보가 많은 포맷으로 클라이언트 애플리케이션(1335)에 제공되는 것을 지정할 수 있다. 따라서 루트 질의(1371)는 예를 들어 SDNP 우편 번호, 그 IP 어드레스, 또는 그 SDNP 어드레스를 포함하는 호출된 당사자에 대한 정보, 즉 전화 거는 데 임의의 필요한 정보에 대한 요청이다.
도 110b의 단계(1380d)에 있어서, SDNP 게이트웨이 미디어 노드(Ma,f)는 SDNP 클라우드(1114)를 검색하고, 미디어 노드(Ma,f)가 호출된 당사자를 식별하는 것을 의미하는 들어오는 어드레스를 획득하고, 전화를 걸기 위해, 예를 들어 SDNP 우편 번호, IP 어드레스, 또는 호출되는 사람의 SDNP 어드레스를 포함하는 임의의 필요한 정보를 획득하며, 그 후 단계(1380E)에서 SDNP 게이트웨이 미디어 노드(Ma,f)는 호출이 취할 경로를 공급하고, 클라이언트 애플리케이션(1335)으로의 지정 영역을 횡단하는 데 필요한 라우팅 정보를 공급한다. 일단 클라이언트, 태블릿(33)이 단계(1380F)에서 목적지 어드레스를 획득하였다면, 태블릿(33)은 SDNP 데이터 패킷(1374B)을 갖는 호출을 개시한다. 마이크로폰(1383A)에 의해 캡처된 음성 음파(1384A)는 오디오 코덱(도시되지 않음)에 의해 디지털 정보로 변환되어 애플리케이션(1335)에 공급된다. SDNP 헤더에 조립된 어드레스 라우팅 및 다른 정보와 오디오 데이터를 조합하여, 애플리케이션(1335)은 "IP Addr TB"로부터 "IP Addr MF"로 퍼스트 마일 라우팅을 위한 데이터 패킷(1374B)을 구축하고, 미디어 노드(Ma,f)로의 패킷 전송을 시작한다. 데이터 패킷(1374B)의 페이로드(1372)에 내장된 SDNP 헤더는 긴급, 전달 선호도, 보안 프로토콜, 및 데이터 타입 사양을 포함할 수 있다. SDNP 데이터 패킷(1374B)의 퍼스트 마일 라우팅이 IP 어드레스를 사용하기 때문에, 패킷 전송은 실제 데이터 콘텐트가 SDNP 영역(U2) 보안 설정을 사용하여 스크램블되고 암호화된다는 점을 제외하고는 일반적인 인터넷 트래픽과 유사하며, 데이터를 캡슐화하는 U2 SDNP 페이로드(1372)에 포함된 SDNP 헤더는 영역(U2)에 대한 보안 동적 네트워크 프로토콜에 따라 특별히 포맷된다. 영역(U2)에 대한 보안 동적 네트워크 프로토콜은, 도 51a의 예에 이미 기재된 바와 같이 영역(U2) 지정 시드 발생기, 즉 알고리즘을 사용하는 시드 생성 방법을 사용하여, 그러나 영역(U2)에 지정한 보안 설정, 태블릿, 등을 사용하여 계산된 영역(U2) 시드와 같은 그 지정 영역을 횡단하는 통신에 특히 적용 가능한 공유 비밀의 세트이다. 마찬가지로 영역(U2) 암호화 및 스크램블 알고리즘은 영역(U2)에 지정한 보안 설정을 기반으로 한다. 따라서 태블릿(33)에 의해 전송된 패킷은 상태(시간)에 기초하여 전술한 방식으로 스크램블되고 암호화되며, 이들 패킷은 이들이 생성된 상태(시간)를 식별하는 해독 키 및 시드를 포함하여, 영역(U2)에 지정한 보안 설정을 사용하여 미디어 노드(Ma,f)에 의해 패킷이 언스크램블 및 해독되게 한다.
요약하면, 각 노드는 이것이 수신한 각각의 패킷을 그 태그에 의해 식별한다. 일단 노드가 패킷을 식별하였다면, 이는 시그널링 서버가 지정한 순서대로 수행하도록 이에 명령하는 패킷에 대해 해독, 언스크램블링, 혼합, 스크램블링, 암호화, 및 분할 동작을 수행한다. 이들 동작에 사용되는 알고리즘 또는 다른 방법은 상태, 예를 들어 패킷이 생성된 시간 또는 상태에 의해 결정되는 알고리즘에 따라 생성된 시드에 기초할 수 있다. 각각의 동작을 수행함에 있어서, 노드는 그 메모리의 표로부터 특별한 알고리즘 또는 방법을 선택하기 위해, 상태 또는 시드를 사용할 수 있다. 다시 시그널링 서버에 의해 지시된 바와 같이, 노드는 각 패킷에 태그를 제공하고, 그 후 SDNP 네트워크를 가로질러 다음 노드 상에 패킷을 라우팅한다. 물론, 들어오는 패킷은 혼합 및/또는 분할되었고, 노드에 의해 전송된 패킷은 일부 데이터 세그먼트가 다른 패킷으로 전송되었을 수 있기 때문에, 수신하는 패킷과 통상적으로 동일하지 않을 것이고, 또한 다른 패킷으로부터의 데이터 세그먼트가 추가되었을 수 있음을 인식해야 한다. 따라서 일단 패킷이 분할되었다면, 각각의 결과적인 패킷은 자체 태그를 얻고, 동일한 최종 목적지로 "형제(sibling)"가 어떻게 이루어질지를 완전히 무시하는 그 자체 루트를 횡단한다. 상기 노드는 다음 홉을 제외하고 각각의 패킷의 루트를 모른다.
단일 채널 SDNP 시스템에서, 게이트웨이 및 다른 미디어 노드는 네임 서버 및 시그널링 서버의 동작을 에뮬레이트하는 3중 의무(triple duty)를 수행해야만 한다. 실제로 단일 채널, 이중 채널, 및 3중 채널 시스템은 패킷 전송, 시그널링, 및 "네임"이라는 3개의 기능이 단일 채널 시스템의 동일한 서버에서, 2개의 타입의 이중 채널 시스템에서, 및 3중 채널 시스템의 3가지 타입의 서버에서 수행된다. 상기 기능 자체는 모두 3가지 타입의 시스템에서 동일하다.
분배 시스템에서, 시그널링 기능을 수행하는 서버는 패킷의 최종 목적지를 알고 있지만, 그러나 단일 서버는 패킷의 전체 루트를 알 수 없다. 예를 들어, 초기 시그널링 서버는 경로의 일부를 알 수 있지만, 그러나 패킷이 어떤 미디어 노드에 도달하였을 때, 시그널링 기능은 다른 시그널링 서버로 핸드오프되며, 이는 그 지점으로부터 루트의 결정을 떠맡는다.
대략적인 비유를 들자면, 뉴욕시의 휴대폰으로부터 샌프란시스코의 랩톱으로 패킷이 송신된다면, 제1 시그널링 서버(또는 시그널링 기능을 수행하는 제1 서버)는 휴대폰으로부터 뉴욕(입구 게이트웨이 노드)로, 또한 거기로부터 캔사스시 및 덴버의 필라델피아, 클리블랜드, 인디애나 폴리스 및 시카고의 서버로 패킷을 라우팅할 수 있으며, 제2 시그널링 서버는 시카고 서버로부터 캔자스 시 및 덴버의 서버로 패킷을 라우팅할 수 있으며, 제3 시그널링 서버는 덴버 서버로부터 솔트레이크 시티, 레노, 및 샌프란시스코(출구 게이트웨이 노드), 그리고 마지막으로 랩탑으로 패킷을 라우팅할 수 있으며, 각각의 시그널링 서버는 SDNP 네트워크에서 전파 지연 및 다른 현재 트래픽 상태에 기초하여 담당하는 루트 부분을 결정한다. 제1 시그널링 서버는 제2 시그널링 서버에게 시카고 서버의 패킷을 기대할 것을 명령하고, 상기 제2 시그널링 서버는 제3 서버에게 덴버 서버의 패킷을 기대할 것을 명령하지만, 그러나 단일의 시그널링 서버(또는 시그널링 기능을 수행하지 않는 서버)는 패킷의 전체 루트를 알지 못할 것이다.
물론, 전술한 바와 같이, 패킷은 그 루트를 따라 혼합되고 분리될 수 있다. 예를 들어 필라델피아 서버로부터 클리블랜드 서버로 패킷을 라우팅하는 대신에, 시그널링 서버는 필라델피아 서버에게 패킷을 3개의 패킷으로 분할하고 이들을 신시내티, 디트로이트 및 클리블랜드의 서버로 라우팅하도록 명령할 수 있다. 그 후, 시그널링 서버는 필라델피아 서버에게 3개의 패킷 각각에 지정된 태그를 제공할 것을 명령하고, 이들이 상기 패킷을 인식할 수 있도록 신시내티, 디트로이트, 및 클리블랜드의 서버에 태그를 알린다.
도 110c의 단계(1380g)는 미디어 서버(1220F)에 의해 호스트된 게이트웨이 미디어 노드(Ma,f)로부터 미디어 서버(1220J)에 의해 호스트된 SDNP 미디어 노드(Ma,j)로 라우팅되는 SDNP 데이터 패킷(1374C)을 도시하고 있다. 단일 채널 통신에 있어서, 게이트웨이가 먼저 단계(1380D)에서 호출된 어드레스를 얻은 시점에 데이터의 라우팅이 먼저 결정된다. IP 데이터 패킷(1374B)의 퍼스트 마일 라우팅과 달리, SDNP 패킷(1374C)의 이런 제1 인트라-클라우드 홉은 인터넷 상에서 인식할 수 없는 SDNP 어드레스 "SDNP Addr MF" 및 "SDNP Addr MJ"를 사용하여 발생한다. 단일 채널 통신에 있어서, 데이터의 라우팅, 즉 각 패킷이 그 루트 상에서 그 목적지를 통과할 노드의 시컨스는 게이트웨이 노드[여기에서는, 노드(Ma,f)]가 호출되는[여기에서는, 단계(1380D)] 어드레스를 먼저 획득하는 시점에 결정된다.
SDNP 데이터 패킷(1374C)의 페이로드(1373A)는 SDNP 영역(Z1) 보안 설정을 사용하여 스크램블되고 암호화되며, 또한 페이로드(1373A) 내의 데이터를 캡슐화하는 SDNP 데이터 패킷(1374C)에 포함된 SDNP 헤더는 영역(Z1)에 대한 보안 동적 네트워크 프로토콜에 따라 지정하게 포맷된다. 임의의 영역에 대한 보안 동적 네트워크 프로토콜은 지정 영역, 이 경우 영역(Z1) 시드 알고리즘, 영역(Z1) 암호화 알고리즘 등을 사용하여 그 지정한 영역, 이 경우에는 영역(Z1)을 횡단하는 통신에 특히 적용할 수 있는 공유 비밀의 세트이다. 보안 목적을 위해, 영역(Z1) 보안 설정은 영역(U2)에 전달되지 않으며, 그 반대의 경우도 마찬가지이다.
단계(1380H)는 미디어 서버(1220J)에 의해 호스트된 미디어 노드(Ma,j)로부터 미디어 서버(1220S)에 의해 호스트된 SDNP 미디어 노드(Ma,s)로 라우팅되는 SDNP 데이터 패킷(1374D)을 도시하고 있다. SDNP 패킷(1374D)의 클라우드 홉은 인터넷 상에서 인식되지 않는 SDNP 어드레스 "SDNP Addr MJ" 및 "SDNP Addr MS"을 사용하여 발생된다. SDNP 데이터 패킷(1374B)의 페이로드(1373B)는 SDNP 영역(Z1) 보안 설정을 사용하여 스크램블링 및 암호화되고, 또한 페이로드(1373B) 내의 데이터를 캡슐화하는 SDNP 데이터 패킷(1374D)에 포함된 SDNP 헤더는 영역(Z1)에 대한 보안 동적 네트워크 프로토콜에 따라 지정하게 포맷된다.
SDNP 클라우드의 노드 사이로 패킷을 보내는 이 프로세스는 한 번 발생할 수도 있고 또는 여러 번 반복될 수도 있으며, 각 반복은 재패킷팅 및 재라우팅 동작(1373)을 포함한다.
도 110d의 단계(1380J)에 도시된 SDNP 패킷(1374E)의 최종 클라우드-홉은 마찬가지로 인터넷 상에서 인식할 수 없는 SDNP 어드레스 "SDNP Addr MS" 및 "SDNP Addr MD"를 사용하여 발생한다. SDNP 데이터 패킷(1374E)은 미디어 서버(1220S)에 의해 호스트된 미디어 노드(Ma)로부터 미디어 서버(1220D)에 의해 호스트된 SDNP 게이트웨이 미디어 노드(Ma,d)로 라우팅된다. SDNP 데이터 패킷(1374E) 내의 페이로드(1373C)는 영역(Z1) SDNP 보안 설정을 사용하여 스크램블되고 암호화되며, 또한 페이로드(1373C) 내의 데이터를 캡슐화하는 SDNP 데이터 패킷(1374E)에 포함된 SDNP 헤더는 영역(Z1)에 대한 보안 동적 네트워크 프로토콜에 따라 포맷된다.
단계(1380K)에서, 데이터 패킷(1374G)은 미디어 서버(1220D)에 의해 호스트된 게이트웨이 미디어 노드(Ma,d)로부터 휴대폰(32)상의 애플리케이션(1335)에 의해 호스트된 클라이언트 노드(C1,1)로 보안 클라우드로부터 라우팅된다. IP 패킷(1374G)은, IP 패킷(1374G) 내의 페이로드(1374)가 SDNP 영역(U1) 보안 설정을 사용하여 스크램블되고 암호화되는 것을 제외하고는, 인터넷 상에서 인식 가능한 IP 어드레스 "IP Addr MD" 및 "IP Addr CP"를 사용하여 발생하고, 또한 페이로드(1374) 내에 데이터를 캡슐화하는 SDNP 데이터 패킷(1374G)은 영역(U1)에 대한 보안 동적 네트워크 프로토콜에 따라 지정하게 포맷된다. 페이로드(1374)의 데이터 콘텐트를 휴대폰(32) 내의 애플리케이션(1335)에 전달할 때, 스피커(1388B)는 오디오 코덱(도시되지 않음)을 사용하여 디지털 코드를 사운드(1384A)로 변환한다.
도 110e에 도시된 단계(1380L)에서, 호출된 사람은 본래의 통신으로부터 반대 방향으로 지향된 음성으로 응답한다. 따라서 음성 음파(1384B)는 마이크로폰(1383B)에 의해 캡처되고 휴대폰(32)의 애플리케이션(1335) 내에 실행된 오디오 코덱(도시되지 않음)에 의해 디지털 코드로 변환된다. 영역(U1) SDNP 보안 설정을 사용하여, 음성 데이터는 영역(U1) IP 데이터 패킷(1374H)을 사용하여 페이로드(1375)를 생성하기 위해 영역(U1) SDNP 헤더와 조합되고, "IP Addr CP"로부터 지향된다. IP 패킷(1374H)의 이 퍼스트 마일 라우팅은 데이터 패킷(1374H) 내의 페이로드(1375)가 영역(U1) SDNP 보안 설정을 사용하여 스크램블되고 암호화되는 것을 제외하고는, 인터넷 상에서 인식 가능한 IP 어드레스를 사용하여 발생하며, 또한 페이로드(1375) 내에 데이터를 캡슐화하는 SDNP 패킷(1374H)에 포함된 SDNP 헤더는 영역(U1)에 대한 보안 동적 네트워크 프로토콜에 따라 지정하게 포맷된다.
단계(1380M)에 도시된 바와 같이, IP 패킷(1374H)을 수신함에 따라, 서버(1220D)에 의해 호스트된 게이트웨이 미디어 노드(Ma,d)는 영역(Z1) 보안 설정을 사용하여 어드레싱을 SDNP 라우팅으로, 또한 SDNP 데이터 패킷(1374J) 및 그 페이로드(1376A)를 컴퓨터 서버(1220U)에 의해 호스트된 미디어 노드(Ma,j)로 라우팅한다. 이런 SDNP 노드 간 통신은 단일 노드 간 홉을 포함하거나, 또는 다수의 미디어 노드를 통한 전송을 포함할 수 있으며, 각각의 홉은 재패킷팅 및 재라우팅 동작(1373)을 포함한다.
도 110f의 단계(1380N)에서, SDNP 데이터 패킷(1374K) 및 그 영역(Z1) 지정 페이로드(1376B)는 컴퓨터 서버(1220J)에 의해 호스트된 미디어 노드(Ma,j)로부터 컴퓨터 서버(1220F)에 의해 호스트된 게이트웨이 미디어 노드(Ma,f)로 지향된다. SDNP 패킷 1374K 내에서 사용되는 SDNP 어드레스 "SDNP Addr MJ" 및 "SDNP Addr MF"는 NAT 어드레스와 비슷한 SDNP 지정 어드레스이며, 유효한 인터넷 라우팅을 나타내지 않는다. 단계(1380P)에서, 게이트웨이 미디어 노드(Ma,f)는 들어오는 데이터 패킷의 내용을 영역(Z1) 지정 페이로드(1376B)로부터 영역(U2) 페이로드(1377)로 변환하고, 또한 IP 어드레스를 사용하여 "IP Addr MF" 및 "IP Addr TB"는 IP 패킷(1374L)을 도 109에 도시된 바와 같이 태블릿(33)에 의해 호스트된 클라이언트 노드(C2,1)로 지향시킨다. 그 후, 애플리케이션(1335)은 해독 및 언스크램블링 후 페이로드(1377) 데이터를 추출하고, 오디오 코덱(도시되지 않음)을 사용하여 디지털 코드를 스피커(1388A)에 의해 생성된 음파(1384B)로 변환한다.
호출을 시작하고 발신자, 즉 태블릿(33)으로부터의 음성을 호출된 사람, 즉 휴대폰(32)으로 라우팅하기 위한 전체 애드혹 통신 시컨스가 도 111a에 요약되어 있다. 도시된 바와 같이, IP 명령 및 제어 패킷(1374A)은 라우팅을 결정하기 위해 접촉 정보를 획득하는 데 사용되며, IP 데이터 패킷(1374B)은 IP 어드레스를 사용하여 SDNP 게이트웨이 노드(Ma,f)에 도달하여, "IP Addr MF"의 IP 어드레스에서 퍼스트 마일 라우팅을 시작하는 데 사용된다. 태블릿(33)과 SDNP 클라우드(1114) 사이의 모든 퍼스트 마일 통신은 영역(U2) 보안 설정을 사용한다.
그 후, 게이트웨이 미디어 노드(Ma,f)는 라우팅을 SDNP 지정 라우팅 어드레스로 변환하고, 그리고 SDNP 클라우드(1114)를 통해 모두 영역(Z1) 보안 설정을 사용하는 "SDNP Addr MF"으로부터 "SDNP Addr MJ" SDNP Addr MS"로, "SDNP Addr MD "로 각각 이동시키기 위해, SDNP 패킷(1374C, 1374D, 1374E)을 사용한다. 이 시컨스는 통신 패킷을 "SDNP Addr MF"으로부터 "SDNP Addr MD"으로 직접 지향시키는 SDNP 데이터 패킷(1374F)과 기능적으로 동일하다. 애드혹 통신에서는 패킷 전달을 감독할 라우팅 슈퍼바이저(supervisor)가 없기 때문에, SDNP 클라우드(1114) 내에서의 패킷 라우팅의 명령 및 제어는 2가지 방법 중 하나로 달성될 수 있다. 일 실시예에 있어서, 각각의 SDNP 데이터 패킷(1374C, 1374D, 1374E)의 소스 및 목적지 어드레스는 SDNP 네트워크를 통한 패킷의 홉-바이-홉 경로를 명시적이고 엄격하게 정의하며, 이 경로는 전송 중 최상의 전반적인 전파 지연을 위해 미리 게이트웨이 미디어 노드에 연결된다. 대안적인 실시예에 있어서, 단일 "게이트웨이-게이트웨이" 패킷, 예를 들어 SDNP 데이터 패킷(1374F)은 SDNP 클라우드로 들어오고 나가는 SDNP 노드 게이트웨이를 정의하는 데 사용되지만, 그러나 정확한 라우팅은 지정하지 않는다. 이 실시예에 있어서, 패킷이 SDNP 미디어 노드에 도달할 때마다, 미디어 노드는, SDNP 미디어 노드가 자동으로 가장 짧은 전파 지연 경로를 선택한다는 점을 제외하고는, 인터넷에 대한 라우팅과 동일한 방식으로 그 다음 홉을 많이 규정하지만, 반면에 인터넷은 그렇지 않다.
마지막으로, 패킷(1374E)이 "SDNP Addr MD"의 게이트웨이 미디어 노드(Ma,d)에 도달하였을 때, 게이트웨이 미디어 노드(Ma,d)는 IP 데이터 패킷(1374G)을 생성하여, 입력 데이터 패킷을 IP 어드레스 "IP Addr MD" 및 "IP Addr CP "로 변경하고, 보안 설정을 영역(U1)의 보안 설정으로 변경한다.
이 라우팅의 다른 요약은 3개의 인트라-클라우드 홉(1441C, 1441D, 1441E), 및 2개의 라스트 마일 라우팅(1441B, 1441F)을 포함하는 도 111b에 도시되어 있다. 클라우드 맵 아래에 표시된 패킷 어드레스는 NAT 어드레스 사용과 유사한 전송 중 IP 어드레스 라우팅과 SDNP 어드레스 라우팅의 2가지 형태의 패킷 어드레스 혼합을 나타낸다. 특히, 패킷 어드레스(1442A, 1442F)는 인터넷 IP 어드레스를 나타내고, 패킷 어드레스(1442C, 1442D)는 SDNP IP 어드레스를 나타낸다. 게이트웨이 미디어 노드가 사용하는 패킷 어드레스(1442B, 1442E)는 IP 및 SDNP 어드레스를 모두 포함하며, 이는 SDNP 게이트웨이 노드는 영역(U2) 보안 설정을 영역(Z1) 보안 설정으로의 변환뿐만 아니라 영역(Z1) 설정을 영역(U1) 보안 설정으로에 대한 어드레스 변환에 책임이 있다는 것을 의미한다.
유사한 방식으로, 도 112a는 IP 어드레스 "IP Addr CP" 및 "SDNP Addr MD"를 사용하여 퍼스트 마일 영역(U1) 데이터 패킷(1374J); 영역(Z1) 지정 데이터 패킷(1374K, 1374L)에 SDNP 어드레스 "SDNP Addr MD", "SDNP Addr MJ" 및 "SDNP Addr MF"를 사용하는 SDNP 클라우드 라우팅; 및 IP 어드레스 "IP Addr CP" 및 "SDNP Addr MD"를 사용하는 라스트 마일 영역(U2) 데이터 패킷(1374J)을 포함하는 통신의 응답 부분을 요약하고 있다. 대응하는 클라우드 라우팅 맵이 도 112b에 도시되어 있으며, 여기서 퍼스트 마일 홉(1441H) 및 라스트 마일 홉(1441L)은 IP 전용 어드레스(1442G, 1442L)를 사용하고, 클라우드 내 홉(1441J, 1441K)은 SDNP 어드레스만을 사용하고, 게이트웨이 미디어 노드(Ma,d, Ma,f)는 IP 와 SDNP 어드레스(1442H, 1442K) 사이의 변환을 수행한다.
도 113a는 SDNP 패킷의 작성 방법을 설명하기 위한 개략도이다. 음성 또는 비디오 통신 중, 사운드, 음성 또는 비디오 신호(1384A)는 마이크로폰(1383A)에 의해 아날로그 전기 신호로 변환된 후 오디오 비디오 코덱(1385)에 의해 디지털화된다. 시컨스 알파벳(9A, 9B)으로 연속해서 표시된 일련의 데이터 세그먼트를 포함하는 오디오 또는 비디오 콘텐츠를 포함하는 결과적인 디지털 데이터 스트링(1387)은, 오디오 또는 비디오 콘텐트를 포함하는 더 작은 데이터 패킷(1388)을 형성하도록 파싱 동작(1386)을 거치고, 그 후 단일 채널 분할 동작(1106)에 의해 정크(1389)가 삽입된다. 단일 채널 분할 동작(1106)은 긴 패킷(1387)을 작은 패킷(1388)으로의 파싱(1386) 및 정크 데이터(1389)의 삽입을 포함하여, 하나는 헤더(Hdr 9)를 갖고 다른 하나는 정크 헤더(J)를 갖는 2개의 부분을 포함하는 확장된 데이터 패킷(1390)으로 나타난다. Hdr 9와 Hdr J 사이에 포함된 데이터 세그먼트의 스트링은 일부 후행 정크 데이터 세그먼트를 갖는 패킷(1388)의 오디오 또는 비디오 데이터를 포함한다. Hdr J를 뒤따르는 데이터 세그먼트는 유용한 데이터를 포함하고 있지 않다. 그 후, SSE 동작(1213)은 데이터 스트링(1391)을 생성하도록 데이터 패킷(1388)으로부터의 데이터를 스크램블링하고, SDNP 패킷(1392)을 생성하도록 SDNP 프리앰블(1399A)을 추가하며, 그 후 스크램블된 암호화된 페이로드(1393A)를 생성하도록 SDNP 프리앰블을 제외한 전체 패킷을 암호화하며, 이는 다시 라우팅을 위해 소스 어드레스 "IP Addr TB" 및 목적지 어드레스 "IP Addr MF"를 갖는 SDNP 패킷(1374B)에 로딩된다. 헤더(Hdr 9, Hdr J)는 각각의 구성요소 단편이 페이로드 내에서 식별되는 것을 허용한다. 헤더의 기능 및 포맷과 SDNP 프리앰블은 본 출원의 나중에 설명한다.
유사한 방식으로, 데이터 스트링(1387)의 데이터 세그먼트(9G, 이하 참조)는 추가적인의 SDNP 패킷으로 형성된다.
도 113b는 본래의 직렬 데이터로부터 페이로드의 생성에 사용될 수 있는 다양한 다른 방법을 도시하고 있다. 예를 들어, 코덱(1385)으로부터의 데이터 스트링(1387)은 상이한 방식으로 파싱되고 분할될 수 있다. 도시된 바와 같이, 데이터 세그먼트(9A, 9B, 9D, 9F)는, 데이터 세그먼트(9C, 9E)가 Hdr 92 섹션으로 조립되어 데이터 패킷(1394)을 함께 형성할 동안, 정크 데이터에 의해 대체된 누락된 데이터 세그먼트를 갖는 Hdr 91로 조립된다. 그 다음에, Hdr 91을 뒤따르는 데이터 필드(1399C)에서의 개별적인 데이터 세그먼트가 Hdr 92를 뒤따르는 데이터 필드(1399E)에서의 데이터 세그먼트와 혼합되지 않도록, 각각의 헤더의 섹션에서의 데이터 세그먼트가 스크램블된다. 결과적인 SDNP 패킷(1395)은 SDNP 프리앰블(1399A), Hdr(91)로 라벨링된 제1 헤더(1399B), 제1 데이터 필드(1399C), 제2 데이터 헤더(1399D)[Hdr(92)], 제2 데이터 필드(1399E)를 포함한다. 데이터 필드(1387)의 데이터 세그먼트(9A-9F)를 다양한 데이터 필드에 확산시키기 위해 다른 방법이 사용될 수 있다. 도시된 바는 단지 설명을 위한 것이다.
다중 헤더에 의해 분리된 다수의 데이터 필드를 포함하는 SDNP 패킷(1395)은 여러 가지 방법 중 하나로 암호화될 수 있다. 풀 패킷 암호화에 있어서, SDNP 프리앰블(1399A) 내의 데이터를 제외하고, SDNP 패킷(1395)의 모든 데이터는 암호화되며, 즉 제1 헤더(1399B), 제1 데이터 필드(1399C), 제2 데이터 헤더(1399D), 및 제2 데이터 필드(1399E)의 모든 내용은 암호화하지 않은 SDNP 프리앰블(1399A) 및 암호문(1393A)을 포함하는 SDNP 패킷(1396)을 형성하도록 모두 암호화된다. 대안적으로, 메시지 암호화에 있어서, SDNP 패킷(1397)은 2개의 별도로 암호화된 암호문 스트링, 즉 데이터 헤더(1399B) 및 데이터 필드(1399C)의 암호화를 포함하는 암호문 스트링(1393B), 및 헤더(1399D) 및 데이터 필드(1399E)의 암호화를 포함하는 암호문 스트링(1393C)을 포함한다. 데이터 전용 암호화로 지칭되는 본 발명의 다른 실시예에 있어서, 데이터 필드(1399C, 1399E)만이 암호문 스트링(1393D, 1393E)으로 암호화되지만, 그러나 데이터 헤더(1399B 및 1399D)는 방해받지 않고 남는다. 결과적인 SDNP 패킷(1398)은 SDNP 프리앰블(1399A), 제1 데이터 헤더(1399B) 및 제2 데이터 헤더(1399D) 및 암호 텍스트 스트링(1393D 및 1393E)에 대한 평문을 포함하며, 데이터 필드(1399C 및 1399E)의 암호화된 버전을 독립적으로 각각 나타낸다.
단일 채널 통신에서, 요구된 라우팅 및 우선순위 정보를 다음 미디어 노드에 중계하기 위해, 도 114에 도시된 SDNP 페이로드(1400)는 필수 정보를 운반해야만 한다. 이 데이터는 SDNP 프리앰블(1401) 또는 데이터 필드 헤더(1402)에 포함된다. SDNP 프리앰블(1401)은 최대 8개의 가능한 필드를 갖는 데이터 필드 "Fld #"의 번호 및 "L Fld X"의 길이의 설명을 포함하는, 전체 패킷에 관련된 정보를 포함하며, 이 실시예에 있어서 X는 1 내지 8까지 변할 수 있고, SDNP 패킷이 생성된 SDNP 영역(Z1), 즉 영역(Z1), 2개의 수치 시드, 2개의 키가 상기 공유 비밀을 통해 생성된다.
데이터 필드 헤더(1402)는 X 데이터 필드 각각에 대해 고정 포맷을 따른다. 상기 데이터 필드 헤더(1402)는 목적지에 대한 어드레스 타입 및 지정 데이터 필드의 목적지 어드레스, 즉 클라우드에서의 이 지정 홉의 목적지를 포함한다. 패킷이 다음 미디어 노드에 도착할 때까지 그대로 남아 있기 때문에, 주어진 패킷에서의 모든 데이터 필드의 목적지 어드레스는 항상 동일하다. 그러나 패킷이 다중 패킷으로 분할될 때, 분할 패킷의 각각에서의 필드 목적지 어드레스는, 상기 패킷이 상이한 미디어 노드로 이동한다면, 다른 각각의 분할 패킷의 필드 목적지 어드레스와는 상이하다.
다중 경로 및 메시형 전송에 있어서, 필드 목적지 어드레스는 동적 라우팅에 사용되는 다양한 필드를 분할하고 혼합하는 데 사용된다.
다음 홉의 어드레스 타입은 패킷이 네트워크를 통과할 때 변경될 수 있다. 예를 들어, 이는 클라이언트와 게이트웨이 사이의 IP 어드레스, 및 일단 이것이 SDNP 클라우드에 들어갔다면 SDNP 어드레스 또는 SDNP zip을 포함할 수 있다. 목적지는 SDNP 지정 라우팅 코드, 즉 SDNP 어드레스, SDNP Zip, 또는 IPv4 또는 IPv6 어드레스, NAT 어드레스, POTS 전화번호 등을 포함할 수 있다.
"필드 영역"으로 라벨링된 패킷 필드는 지정 필드가 생성된 영역, 즉 U1, Z1, U2 등으로 과거의 암호화 또는 스크램블링이 수행되었는지의 여부를 기술한다. 일부 경우에, 데이터 패킷을 언스크램블링 또는 해독하는 것은 추가 정보, 예를 들어 키, 시드, 시간 또는 상태를 요구하며, 이 경우 "필드 등(Field Others)"으로 라벨링된 패킷 필드는 필드 지정 정보를 운반하는 데 사용될 수 있다. "데이터 타입"으로 라벨링된 패킷 필드는, 사용되었다면, 음성 및 비 실시간 데이터로부터 실시간 라우팅을 구분하기 위한 라이브 비디오와 같은 시간 민감형 정보를 포함하는 데이터 패킷으로부터 실시간 통신을 요구하지 않는 상황 별 라우팅, 데이터 구분, 사전 녹화된 비디오, 텍스트, 및 컴퓨터 파일을 촉진시킨다. 데이터 타입은 음성, 텍스트, 실시간 비디오, 데이터, 소프트웨어 등을 포함한다.
"긴급" 및 "전달"로 라벨링된 패킷 필드는 함께 사용되어, 지정 데이터 필드의 데이터를 라우팅하는 방법을 결정한다. 긴급은 스네일(snail), 정상, 우선, 및 긴급 범주를 포함한다. 전달은 정상, 중복, 특수, 및 VIP 범주에 대한 다양한 QoS 마커를 포함한다. 본 발명의 일 실시예에 있어서, 표(1403)에 도시된 다양한 데이터 필드의 2진 크기는 필요한 통신 대역폭을 최소화하도록 선택된다. 예를 들어, 도시된 바와 같은 데이터 패킷은 0 내지 200B의 범위일 수 있으며, 그에 따라 데이터 필드당 200B의 8 패킷은 SDNP 패킷이 1,600B의 데이터를 운반할 수 있음을 의미한다.
이중 채널 통신 - 도 115에 도시된 이중 채널 SDNP 데이터 전송의 일 실시예에 있어서, 콘텐트는 태블릿(33) 상에 호스트된 클라이언트 노드(C2,1)로부터 영역(U2) 퍼스트 마일 위의 게이트웨이 미디어 노드(Ma,f)로 미디어 채널을 통해 이동하며, 그 후 컴퓨터 서버(1118) 상에 호스트된 영역(Z1) 메시형 라우팅을 가로질러, 그리고 마지막으로 영역(U1) 라스트 마일 라우팅을 통해 게이트웨이 미디어 노드(Ma,d)로부터 휴대폰(32) 상에 호스트된 클라이언트 미디어(C1,1)로 이동한다. 라우팅은 퍼스트 마일 IP 패킷(1374B), SDNP 메시형 네트워크를 통한 SDNP 패킷(1374F), 및 라스트 마일 IP 패킷(1374G)을 포함한다.
미디어 및 콘텐트 전송과 병렬로, 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(Ss)와 통신하는 클라이언트(C2,1)는 시그널링 서버(Sd), 시드(929), 및 클라이언트(C2,1)가 이들을 송신할 때의 시간 또는 상태에 기초한 암호화 키(1030)를 통해 수치 시드(929) 및 암호화 키(1030)를 클라이언트(C1,1)에 송신한다. 영역(Z1)을 통하지 않고 시그널링 루트(1405)를 통해 클라이언트 사이에 키 및 시드(보안 자격 증명으로도 알려진)와 같은 보안 설정을 직접 교환함으로써, 종단 간 보안은 보안 설정으로의 액세스를 획득한 영역(Z1)에서의 네트워크 운영자의 임의의 위험을 제거함으로써, 또한 영역(U1) 또는 영역(Z1)의 보안을 포함함으로써 유리하게 실현된다. 이 실시예는 SDNP 네트워크 통신에서 보안의 또 다른 차원을 나타낸다. 예를 들어, 시드(929)는 클라이언트 애플리케이션에서 데이터 패킷을 스크램블 및 언스크램블하는 데 사용될 수 있다. 마찬가지로, 도시된 바와 같이, 해독 키(1030)는 클라이언트(C1,1)만이 암호화된 메시지를 열게 한다. 키(1030) 및 수치 시드(929)가 절대로 영역(Z1)을 통과하지 않기 때문에, 네트워크 운영자는 네트워크 보안을 손상시킬 수 없다. 데이터 패킷이 클라이언트(C2,1)로부터 게이트웨이 노드(Ma,f)에 들어갈 때, 들어오는 데이터 패킷은 이미 암호화되고 스크램블된다. 게이트웨이 노드(Ma,d)로부터 클라이언트(C1,1)에 의해 수신된 패킷은 이들이 클라이언트(C2,1)를 떠나 게이트웨이 노드(Ma,f)로 향할 때와 동일한 스크램블 및/또는 암호화된 형태로 존재한다. 모든 노드에 있는 네트워크의 동적 스크램블링 및 암호화(도 115에 명시적으로 표시되지 않음)는 SDNP 클라우드에 의해 촉진되는 보안의 제2 계층을 나타낸다. 달리 말하면, 클라이언트 사이에 보안 자격 증명의 교환을 포함하는 이 외부 종단 간 보안 계층은, SDNP 클라우드 자체의 동적 스크램블링 및 암호화에 추가된다.
따라서 도 115에 도시된 바와 같이, 시그널링 노드(Ss, Sd)는 미디어 노드(Ma,f, Ma,d)에게, IP 패킷(1374B)을 사용하여 영역(U2)에서 "IP Addr TB"로부터 "IP Addr MF"로, SDNP 패킷(1374F)을 사용하여 영역(Z1)에서 "SDNP Addr MF"로부터 "SDNP Addr MD"로, IP 패킷(1374G)을 사용하여 영역(U1)에서 "IP Addr MD"로부터 "IP Addr CP"로, 데이터를 라우팅할 것을 명령한다. 이 실시예에 있어서, 시그널링 노드(Ss, Sd)가 클라이언트 노드(C2,1, C1,1)와 직접 통신하고, 또한 미디어 통신 채널 상에서 데이터 패킷을 통해 게이트웨이 미디어 노드(Ma,f, Ma,d)와 간접적으로만 통신하기 때문에, 메시형 네트워크에 대한 라우팅 명령은 게이트웨이에서 게이트웨이로 SDNP 패킷(1374F)을 사용하는 것이다. 시그널링 서버(Ss, Sd)는 메시형 네트워크 내의 중간 미디어 노드와 통신할 수 없다. 따라서 도 115에 도시된 실시예에 있어서, 미디어 노드는 클라우드 내의 동적 보안을 단일 채널 통신 시스템으로서 관리하는 반면, 시그널링 노드는 SDNP 클라우드를 지나, 즉 영역(Z1)을 지나 종단 간 보안을 촉진시키는 데 사용된다.
도 116에 도시된 이중-채널 SDNP 데이터 전송의 다른 실시예에 있어서, 서버(1365)에 의해 호스트된 시그널링 노드(Ss, Sd)는 클라이언트에 대한 종단 간 보안을 촉진시키고, 동시에 SDNP 클라우드 내의 동적 라우팅 및 보안을 관리한다. 따라서 시그널링 노드(Ss, Sd)는 신호 루트(1405)를 사용하여 종단 간 클라이언트 노드(C2,1, C1,1) 사이의 수치 시드(929) 및 해독 키(1030)를 전송할 뿐만 아니라, 이들은 신호 루트(1406)에 의해 운반된 동적 SDNP 패킷(1374Z)을 사용하여 노드간 단일 홉 라우팅 명령뿐만 아니라 이를 통해 통신 패킷 및 콘텐트가 이동하는 메시형 네트워크의 모든 단일 미디어 노드를 통과시킨다. 이러한 방식으로, 시그널링 노드(Ss, Sd)는 라우팅 및 보안을 제어하고, 네트워크 내의 미디어 노드는 콘텐트를 운반하고, 시그널링 노드(Ss, Sd)로부터 명령을 실행한다. 이러한 실행에 있어서, 미디어 노드 또는 시그널링 노드(Ss, Sd)는 어느 미디어 서버가 온라인인지, 어느 것이 아닌지, 및 그 동적 IP 어드레스가 그 때 무엇인지를 추적하는 책임을 진다.
3중 채널 통신 - 실제 데이터 전송으로부터 네트워크의 노드를 추적하는 책임을 분리함으로써 보다 더욱 뛰어난 보안과 향상된 네트워크 성능을 얻을 수 있다. 이 접근법에서 "네임 서버"로 지칭되는 서버의 중복 네트워크는 네트워크 및 그 미디어 노드를 지속적으로 모니터링하여, 라우팅 및 보안 데이터 교환 동작을 하는 시그널링 서버를 자유롭게 하며, 또한 미디어 서버가 상기 시그널링 노드로부터 수신된 라우팅 명령의 실행에 집중하게 한다. 이는 여기에서 "3중 채널"로 지칭되는 것으로서 도 117에 도시되어 있으며, 여기서 네임 서버 노드(NS)를 호스트하는 네임 서버(1408)는 네트워크 노드 목록(1410)를 포함하는 네트워크의 활성 SDNP 노드의 목록을 유지한다. 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(S)로부터의 요청에 따라, 네임 서버(1408)에 의해 호스트된 네임 서버 노드(NS)는 네트워크 기술을 통과시키며, 이에 따라 시그널링 노드(S)가 영역(U2, Z1, U1) 등을 포함하는 네트워크 상태 표(1409)에 도시된 바와 같이 SDNP 클라우드(1114)의 모든 미디어 노드 사이에 상태 및 전파 지연을 추적 및 기록한다. 호출을 보내는 프로세스에서, 시그널링 노드(S)는 태블릿(33)에 의해 호스트된 클라이언트 노드(C2,1)로의 영역(U2) 퍼스트 마일 라우팅에 대한 명령, 휴대폰(32)에 의해 호스트된 클라이언트 노드(C1,1)로의 영역(U1) 라스트 마일 라우팅에 대한 명령, 미디어 콘텐트를 SDNP 데이터 패킷에 전송하는 데 사용되는 보안 SDNP 클라우드(1114)에서 모든 중간 미디어 노드에 대한 영역(Z1) 라우팅을 위한 명령을 포함하여, 네트워크를 통해 데이터 패킷의 계획된 전송에 포함된 모든 노드에 라우팅 명령을 공급한다.
업데이트된 네트워크 기술을 유지하기 위해, 디바이스가 네트워크에 로그온할 때마다, 그 상태 및 그 IP 어드레스, 그 SDNP 어드레스 또는 경우에 따라 둘 모두에 관한 데이터는 도 118에 도시된 바와 같이 네임 서버(1408)로 전송된다. 네트워크 상태 및/또는 어드레스 데이터는 그 후 네트워크 어드레스 테이블(1415)에 저장되며, 이는 태블릿(33) 또는 휴대폰(32)에서 동작하는 애플리케이션(1335), 노트북(35) 또는 데스크탑(도시되지 않음)상에서 동작하는 애플리케이션(1411), 자동차(1255) 또는 냉장고에 의해 그래픽으로 나타낸 IoT 디바이스(34) 상에서 동작하는 매립된 애플리케이션(1412, 1413)에 저장되어 있다. 또한, 네트워크 어드레스 표(1415)는 컴퓨터(1220F)에 의해 호스트된 미디어 노드(Ma,f) 및 컴퓨터(1220D)에 의해 호스트된 미디어 노드(Ma,d)를 포함하는 클라우드의 모든 미디어 서버의 상태를 추적한다. 네트워크 어드레스 표(1415)는 임의의 네트워크 연결 디바이스에 대한 라우팅 어드레스를 기록한다. 거의 모든 경우에 있어서, 연결된 디바이스의 IP 어드레스 또는 SDNP 어드레스는 네트워크 어드레스 표(1415)에 기록되고 추적된다. SDNP 가능 통신 어플리케이션을 동작하는 미디어 서버 및 선택적으로 개인용 모바일 디바이스와 같은 다른 경우에 있어서, 네트워크 어드레스 표(1415)는 게이트웨이 미디어 노드에서 어드레스 변환에 필요한 IP 어드레스와 SDNP 어드레스를 모두 기록한다.
네임 서버 노드(NS)가 네트워크의 철저한 기술을 유지하는 반면에, 도 119에 도시된 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(S)는 이용 가능한 네트워크 내의 미디어 노드의 모든 조합 사이의 전파 지연 표(1416)를 유지한다. 전파 지연 표(1416)는 스톱워치(stopwatch)(1415A, 1415B, 1415C)에 의해 기호로 도시된 네트워크의 미디어 노드를 통해 데이터 패킷의 정상적인 이동으로부터 유도된 지연 계산에 의해 업데이트되어, 미디어 서버(1220D, 1220F; 1220F, 1220H; 1220D, 1220H) 사이의 전파 지연을 각각 모니터링한다. 진행 중인 트래픽이 부족하거나 드문 경우, SDNP 네트워크는 연결 상태를 확인하기 위해 테스트 패킷을 사용한다. 하나의 테스트 패킷 방법이 도 120에 도시되어 있으며, 여기서 미디어 서버는 시그널링 서버에 의해 일련의 패킷 버스트를 전송하도록 지시되며, 송신된 패킷의 크기는 지연이 추적될 동안 크기 또는 주파수를 증가시킨다. 곡선(1417)에 의해 도시된 결과적인 로딩 그래프는 지정 통신 경로 또는 링크의 최대 로딩이 라인(1418)으로서 도시된 최대 로딩을 초과하지 않는 크기로 또는 전송률로 제한되어야 함을 나타낸다.
네트워크, 그 노드 어드레스, 그 전파 지연에 관한 전술한 정보가 네임 서버 및 시그널링 서버에 용이하게 사용할 수 있다면, 도 121에 도시된 바와 같이, 3중 채널 통신을 사용하여 높은 QoS 통신이 가장 잘 달성될 수 있다. 도시된 바와 같이, 시그널링 서버(1365)에 의해 호스트된 시그널링 노드(S)는 노드 간 라우팅 데이터(1374Z) 및 영역 지정 수치 시드(929) 및 해독 키(1030)를 포함하는 SDNP 패킷(1420)을 분배함으로써, 미디어 서버(1118)를 통해 클라이언트(1335)로 데이터의 라우팅을 완전히 제어한다. 호출 설정 시, 클라이언트 노드(C2,1), 이 경우에는 태블릿(33)에서의 SDNP 애플리케이션(1335)은 네트워크 상에 자신을 등록하여 가장 가까운 시그널링 서버를 발견하도록 네임 서버(1406) 상의 네임 서버 노드(NS)와 접촉하며, 이에 따라 이는 호출을 시작하기 위해 시그널링 서버(1365)상의 시그널링 노드(S)와 접촉한다. 그 후, 시그널링 노드(S)는 라우팅을 관리하고, 미디어 서버는 그에 따라 데이터를 라우팅하여, 각각의 영역(U2, Z1, U1)에 대한 보안 설정을 변경한다.
도 122에 도시된 바와 같이, 최신 네트워크 노드 목록(1410)을 유지 시 네임 서버의 중요성 때문에, 네임 서버(1408) 상에 호스트된 네임 서버 노드(NS)는 백업 네임 서버 상에 동작하는 백업 네임 서버에 의해 도시된 하나 또는 그 이상의 중복 서버와 함께 동작한다. 임의의 클라이언트 노드 또는 미디어 노드가 네임 서버(1408)에 도달할 수 없는 경우, 정보 질의는 자동으로 원활하게 백업 네임 서버(1421)로 전송된다. 전화를 걸거나 패킷 라우팅을 위한 지속적인 가용성을 보장하기 위해 동일한 중복 방법이 시그널링 서버에 대해 이용된다. 도 123에 도시된 바와 같이, 시그널링 서버(1365) 상에 호스트된 시그널링 노드(S)는 백업 시그널링 서버(1422) 상에 호스트된 백업 시그널링 노드(S2)를 가지며, 이는 시그널링 서버(1365)가 실패하거나 공격받는 경우 자동으로 인계한다.
본 발명에 따른 3중 채널 SDNP 패킷 라우팅을 사용하는 통신이 도 124a에 도시되어 있으며, 여기서 단계(1430A)에서 디바이스 또는 발신자가 네트워크에 로그인한다. 이를 위해, 태블릿(33)상의 클라이언트 애플리케이션(1335)은 네임 서버(1408) 상에 호스트된 네임 서버 노드(NS)와 자동으로 접촉하여 자신을 등록한다. 이 이벤트는 네트워크에 로그인하는 클라이언트와 관련되며, 반드시 전화를 거는 것은 아니다. 등록 프로세스에서, 네임 서버 노드(NS)는 네임 서버의 목록, 즉 SDNP 네임 서버 목록(1431), 및 선택적으로 시그널링 서버의 목록을 클라이언트 애플리케이션(1335)에 전달한다. 그 정보에 의해, 디바이스는 SDNP 호출할 준비가 되고 그리고 호출할 수 있다.
실제로 전화를 거는 제1 단계(1430B)에서, 태블릿(33)은 IP 패킷(1450A)을 네임 서버 노드(NS)에 송신하여, 호출되는 목적지 또는 사람에 대한 라우팅 및 정보를 요청한다. 접촉 정보 요청, 즉 루트 질의(1431)는 IP 어드레스, SDNP 어드레스, 전화번호, URL, 또는 다른 통신 식별자의 형태일 수 있다. 단계(1480C)에서, 네임 서버(1408)에 의해 호스트된 네임 서버 노드(NS)는 클라이언트의 SDNP 애플리케이션(1335)에 의도된 수신자의 어드레스를 공급한다. 응답은 TCP 전송 계층을 사용하여 IP 패킷(1450B)에 의해 전달된다. 대안적인 실시예에 있어서, 클라이언트는 시그널링 서버로부터 라우팅 정보를 요청하고, 또한 시그널링 서버는 네임 서버로부터 정보를 요청한다.
도 124b에 도시된 단계(1430D)에서, 클라이언트는 최종적으로 "IP Addr TB"로부터 시그널링 노드(S)를 호스트하는 시그널링 서버(1365)의 IP 어드레스인 "IP Addr S"으로 IP 패킷(1450C)으로 호출을 시작할 수 있다. IP 패킷(1450C)이 실시간 데이터가 아닌 수신자의 어드레스를 운반하고 있기 때문에, IP 패킷(1450C)은 바람직하게는 전송 계층으로서 TCP를 사용한다. 표(1416)에 도시된 네트워크의 노드 간 전달 지연에 대한 지식을 이용하여, 시그널링 노드(S)는 SDNP 게이트웨이 서버에 대한 라스트 마일 연결뿐만 아니라 SDNP 네트워크 서버(1114)에 대한 네트워크 라우팅 플랜을 개발하고, 단계(1430E)에서 이 라우팅 정보를 SDNP 클라우드(1114)에 통신한다. 시그널링 서버는, 들어오는 데이터 패킷을 취급하는 방법을 명령하기 위해, 명령 및 제어 데이터 패킷을 각각의 미디어 서버에 전송한다. 명령 및 제어 데이터 패킷은, 오디오 콘텐트를 운반하는 것이 아니라 그 페이로드가 지정 식별 태그, SDNP 어드레스, 또는 SDNP 우편 번호를 갖는 패킷을 새로운 목적지로 라우팅하는 방법을 미디어 노드에 알려주는 일련의 명령을 포함한다는 점을 제외하고는, 일상적인 데이터 패킷처럼 보인다. 대안적으로, 전술한 바와 같이, 분배 실시예에서 단일 시그널링 서버는 전체 라우팅 플랜을 개발하지 않고, 패킷이 SDNP 네트워크를 통해 진행할 때, 오히려 일련의 시그널링 서버가 라우팅 계획의 연속적인 부분을 개발한다.
그 후, 단계(1430F)에서, 시그널링 노드(S)는 태블릿(33)의 애플리케이션(1335)에, 게이트웨이 미디어 노드 어드레스, 영역(U2) 해독 키(1030), 시드(929), 및 퍼스트 마일을 통해 송신될 제1 패킷을 보호하는 데 필요한 다른 보안 설정을 송신한다.
일단 태블릿(33)이 단계(1430F)에서 영역(U2) 보안 설정을 획득하였다면, 도 124c에 도시된 바와 같이, SDNP 패킷(1450D)과의 호출을 시작한다. 마이크로폰(1383A)에 의해 캡처된 사운드 표현된 음파(1384A)는, 오디오 코덱(도시되지 않음)에 의해 디지털 정보로 변환되어 태블릿(33)의 애플리케이션(1335)에 공급된다. 오디오 데이터를 SDNP 헤더에 조립된 어드레스 라우팅 및 다른 정보, 애플리케이션(1335)과 조합하면, "IP Addr TB"로부터 "IP Add MF"로의 퍼스트 마일 라우팅을 위한 SDNP 패킷(1450D)을 구축하고, 게이트웨이 미디어 노드(Ma,f)로의 패킷 전송을 시작한다. 데이터 패킷의 페이로드(1432)에 매립된 SDNP 헤더는 긴급, 전달 선호도, 보안 프로토콜, 및 데이터 타입 명세를 포함할 수 있다. 또한, SDNP 헤더는 SDNP 프리앰블과 MAC 어드레스, 소스 및 목적지 IP 어드레스 및 프로토콜 필드, 기본적으로 SDNP 헤더를 캡슐화하는 페이로드를 갖는 계층 2, 3 및 4 정보, 및 그 자신의 SDNP 서브 헤더를 갖는 모든 데이터 패킷을 포함한다. SDNP 패킷(1450D)의 퍼스트 마일 라우팅이 IP 어드레스를 사용하여 발생하기 때문에, 패킷 전송은 실제 데이터 콘텐트가 영역(U2)에 대한 보안 설정을 사용하여 스크램블되고 암호화된다는 점을 제외하고는, 통상적인 인터넷 트래픽과 유사하며, 또한 데이터도 포함하고 있는 SDNP 페이로드(1432)에 포함된 SDNP 헤더는 특히 영역(U2)에 대한 보안 동적 네트워크 프로토콜에 따라 포맷된다.
도 124c에도 도시된 단계(1430H)는 SDNP 클라우드에서 미디어 서버(1220F)에 의해 호스트된 게이트웨이 미디어 노드(Ma,f)로부터 미디어 서버(1220J)에 의해 호스트된 라우팅되는 미디어 노드(Ma,j)로 라우팅되는 SDNP 데이터 패킷(1450E)을 도시하고 있다. IP 데이터 패킷(1450D)의 퍼스트 마일 라우팅과는 달리, SDNP 패킷(1450D)의 이런 제1 인트라-클라우드 홉은 인터넷 상에서 인식할 수 없는 SDNP 어드레스 "SDNP Addr MF" 및 "SDNP Addr MJ"를 사용하여 발생한다. 더욱이, 페이로드(1433)는 SDNP 영역(Z1) 보안 설정을 사용하여 스크램블되고 암호화되며, 또한 데이터를 캡슐화하는 Z1 SDNP 패킷에 포함된 SDNP 헤더는 영역(Z1)에 대한 공유 비밀에 따라 지정하게 포맷된다. 보안 목적을 위해, 영역(Z1) 보안 설정은 영역(U2)에 통신되지 않으며, 또한 반대의 경우도 마찬가지이다.
도 124d에 도시된 단계(1430J)에서, 데이터 패킷(1450F)은 보안 SDNP 클라우드로부터 미디어 서버(1220D)에 의해 호스트된 게이트웨이 미디어 노드(Ma,d)로부터 휴대폰(32)상의 애플리케이션(1335)에 의해 호스트된 클라이언트 노드(C1,1)로 라우팅된다. IP 패킷(1450F)의 이 라스트 마일 라우팅은 인터넷 상에서 인식 가능한 "IP Addr MD" 및 "IP Addr CP"를 사용하여 발생하지만, 그러나 페이로드(1434)는 SDNP 영역(U1) 공유 비밀을 사용하여 스크램블링 및 암호화되며, 또한 페이로드(1434)는 공유된 비밀에 따라 지정하게 포맷된다. 페이로드(1434)의 데이터 콘텐트를 휴대폰(32)의 애플리케이션(1335)에 전달함에 따라, 스피커(1388B)는 오디오 코덱(도시되지 않음)을 사용하여 디지털 코드를 음파(1384A)로 변환한다.
들어오는 SDNP 패킷(1450F)이 휴대폰(32)의 애플리케이션(1335)에 의해 수신되었을 때, 어드레스로부터는 데이터 패킷이 SDNP 클라우드를 떠난 마지막 미디어 노드(Ma,d)만을 볼 수 있다. SDNP 페이로드가 발신자에 관한 정보를 운반하지 않거나 또는 시그널링 노드(S)가 이 정보를 제공하지 않는 한, 데이터를 호출하거나 수신하는 사람이 그 원본 또는 그 소스를 추적할 수 있는 방법이 없다. 이 "익명의" 통신 및 추적할 수 없는 데이터 전달 기능은, SDNP 통신의 독특한 양태이며 본 발명에 따른 단일 홉 동적 라우팅의 고유 아티팩트이다. SDNP 네트워크는 발신자가 이를 원할 경우에만 발신자 또는 발신자에 대한 정보를 전달하며, 그렇지 않다면 사용할 수 있는 정보는 없으며, 익명성이 SDNP 패킷 전달의 디폴트 조건이다. 실제로, 송신 클라이언트의 SDNP 애플리케이션은 호출된 또는 메시지를 받은 사람에게 상기 정보가 지정 발신자로부터 왔음을 알려주는 메시지를 의도적으로 송신해야만 한다. 시그널링 서버가 발신자와 패킷의 라우팅을 알고 있기 때문에, 이는 발신자의 신원을 밝히지 않고 응답 데이터 패킷에 대한 루트를 결정할 수 있다.
대안적으로, 시그널링 서버는 별칭 ID 또는 아바타를 공개하거나, 또는 발신자의 신원을 소수의 절친한 친구 또는 승인된 연락처에만 액세스하도록 제한할 수 있다. 익명성은 특히 게임과 같은 애플리케이션에서 중요한 역할을 하며, 플레이어가 그 진정한 정체성을 공유할 이유가 없는 경우, 특히 알려지지 않은 상대방이 있는 경우 특히 그렇다. 익명 통신을 요구하는 다른 조건은 기계 대 기계 또는 M2M, IoT 또는 사물 인터넷, 차량 대 차량 또는 V2V, 또는 차량 대 인프라 또는 V2X 통신이며, 여기서 클라이언트는 잠재적으로 적대적인 디바이스, 에이전트, 또는 사이버 해적 디바이스에 연락처 및 개인 정보를 넘겨줄 기계, 도구, 디바이스를 원치 않는다. 극도의 편집증 사용자의 경우, 심지어 음성 통신조차도 익명으로 처리될 수 있도록, 음성이 전자적으로 위장될 수도 있다.
들어오는 패킷에 응답하여 도 124d의 단계(1430K)에 도시된 바와 같이, 휴대폰(32)에 의해 호스트된 애플리케이션(1335)은 시그널링 서버(1365) 상에 호스트된 시그널링 노드(S)로 IP 패킷(1450G)을 송신한다. 나가는 패킷은 응답 라우팅 정보를 요청한다. 일 실시예에 있어서, 시그널링 노드(S)는 그 후 호출된 사람에게 발신자의 진정한 신원을 가진 제공할 수 있고, 그에 따라 호출된 사람의 SDNP 애플리케이션 프로그램은 역방향으로 그들에 연결하는 데 사용된 전체 연결 프로세스를 반복함으로써 응답할 수 있고, 즉 네임 서버와 접촉할 수 있고, SDNP 또는 IP 어드레스를 찾고, 시그널링 서버와 접촉하고, 응답을 라우팅할 수 있다. 다른 실시예에 있어서, 시그널링 서버는 패킷이 어디에서 왔는지를 알고, 또한 발신자의 접촉 정보를 결코 공개하지 않고 송신될 응답 패킷에 대한 루트를 설계한다.
사용된 응답 방법과는 관계없이, 도 124e의 단계(1430l)에서, 응답 IP 패킷은 마이크로폰(1383B)에 의해 캡처되고 아날로그 신호로 변환된 후 오디오 코덱(도시되지 않음)에 의해 디지털 코드로 변환된 음성파(1384B)를 포함하는 오디오 데이터를 조합한다. 한번 처리된, 스크램블된, 암호화된, 그리고 패키징된 오디오 콘텐트는 "IP Addr CP"로부터 SDNP 게이트웨이 미디어 노드 "IP Addr MF"로 라우팅된 IP 패킷(1450H)의 안전한 페이로드(1435)가 된다. 이들 IP 어드레스는, 페이로드(1435)가 SDNP 영역(U1) 보안 설정을 사용하여 스크램블되고 암호화된 콘텐츠를 포함한다는 것을 제외하면, 인터넷 상에서 인식 가능하며, 또한 페이로드(1435)에 포함된 SDNP 헤더는 영역(U1)에 대한 공유 비밀에 따라 지정하게 포맷된다.
단계(1430M)에서, 응답 패킷은 SDNP 클라우드 내에서 임의의 노드 간 홉을 실행하지 않고 보안 SDNP 클라우드를 빠져 나간다. 이 경우, 미디어 서버(1220F)에 의해 호스트된 게이트웨이 미디어 노드(Ma)는 IP 어드레스 "IP Addr MF" 및 "IP Addr TB"를 사용하여 영역(Z1) 지정 페이로드(1435)로부터의 SDNP 패킷(1450H)의 콘텐츠를 영역(U2) 페이로드(1436)로 변환하고, 태블릿(33)에 의해 호스트된 클라이언트 노드(C2,1)로 IP 패킷(1450J)을 지향시킨다. IP 패킷(1450J)의 이 라스트 마일 라우팅은 인터넷 상에서 인식 가능한 IP 어드레스 "IP Addr MF" 및 "IP Addr TB"를 사용하여 발생하지만, 그러나 페이로드(1436)는 SDNP 영역(U2) 보안 설정을 사용하여 스크램블되고 암호화되며, 또한 페이로드(1436)에 포함된 SDNP 헤더는 영역(U2)에 대한 보안 동적 네트워크 프로토콜에 따라 지정하게 포맷된다. 일단 휴대폰(33)에 의해 수신되었다면, SDNP 가능 애플리케이션(1335)은 그 후 페이로드 데이터를 추출하고, 해독 및 언스크램블링 후 오디오 코덱(도시되지 않음)을 사용하여 디지털 코드를 스피커(1388A)에 의해 생성된 사운드(1384B)로 변환한다. 단계(1430K-1430M)에 도시된 시컨스에서, 오직 하나의 게이트웨이 미디어 노드만 통신에 포함되며, 따라서 "퍼스트 마일"이 바로 "라스트 마일"에 뒤따른다.
본 발명에 따른 3중 채널 통신을 사용하는 호출 시컨스의 요약이 도 125a에 도시되어 있으며, 여기서 IP 전송 기반 IP 패킷(1450A, 1450B)을 사용하여, 태블릿(33)에서 동작하는 애플리케이션(1335) 및 네임 서버 노드(NS)는 대화를 설정하며, 이에 따라 접촉된 사람의 연락처 정보 또는 IP 어드레스를 수신하였다면, 태블릿(33)은 시그널링 노드(S)에게 TCP 전송 기반 IP 패킷(1450C)을 사용하여 호출을 하고 수신자와의 세션을 설정할 것을 명령한다. 그 후, 음파(1384A)는 SDNP 클라우드를 통한 전송을 위해, 퍼스트 마일 및 라스트 마일에 대한 IP 패킷(1450D 및 1450F) 및 SDNP 패킷(1450E)의 조합을 각각 사용하여, 캡처되고, 패키지되어, 미디어 노드에 의해 그 목적지로 라우팅된다. 태블릿(33)으로부터 게이트웨이 미디어 노드(Ma,f)로의, 제2 게이트웨이 미디어 노드(Ma,d)로의, 휴대폰(32)으로의 결과적인 라우팅이 도 125b에 도시되어 있다. 노드 간 홉(1453B)을 제외한 모든 전송은 SDNP 어드레스가 아닌 IP 어드레스를 사용한다. 이 시컨스가 도 125b 하단에 순서도로 도시되어 있다.
응답 시컨스는 도 126a에 도시되어 있으며, 여기서 IP 패킷(1452G)을 사용하는 휴대폰(32)의 애플리케이션(1335)은 시그널링 노드(S)에게 응답 패킷을 태블릿(32)에 송신할 것을 요청하고, 게이트웨이 미디어 노드는 IP 패킷(1452H, 1452J)을 사용하여 음성 응답을 라우팅한다. 홉(1453D, 1453E)을 포함하는 도 126b에 도시된 결과적인 패킷 전송은 거의 너무 짧은데, 그 이유는 전송은 게이트웨이 미디어 노드(Ma,f)를 통한 라우팅을 제외하고는 인터넷을 통해 완전히 발생하기 때문이며, 이는 소스 및 목적지 IP 어드레스를 재기록함으로써 그리고 영역(U1)으로부터 영역(U2)으로 데이터 패킷 보안 설정을 변환함으로써만 보안을 강화시킨다. 이러한 예에서, SDNP 클라우드 내의 어떠한 노드-노드 홉도 발생하지 않으며, 이는 단일 노드, 이 경우 미디어 서버(1220F) 내외로 데이터 패킷을 추적하고 상관시키는 것을 보다 쉽게 한다는 단점을 갖는다.
이러한 경우에, 도 126c에 도시된 바와 같이, 잘못된 방향 설정을 촉진시키기 위해 더미(dummy) 노드를 데이터 전송 경로에 삽입하는 것이 유리하다. 이러한 경우에, 라우팅은 어드레스 "IP Addr MF"와 동일한 서버에 또는 동일한 서버 팜에 제2 서버 어드레스 "IP Addr MF2"를 포함하도록, 또한 중간 IP 패킷(1452K)을 삽입함으로써 "IP Addr CP"로부터의 들어오는 IP 패킷(1452H)을 "IP Addr MF2"로부터 "IP Addr TB"로 나가는 IP 패킷(1462L)으로 변환하도록 수정되며, 이는 패킷(1452K)을 "IP Addr MF"로부터 "IP Addr MF2"로, 또는 대안적으로 "SDNP Addr MF"로부터 "SDNP Addr MF2"로 "핸드오프"한다. 또한, 포트 할당은 전송 프로세스 중에도 변화한다. 이 경우, 어드레스가 인터넷 IP 어드레스인지, NAT 어드레스인지 또는 SDNP 어드레스인지의 여부는 중요하지 않은데, 그 이유는 데이터 패킷(1452K)이 서버 또는 서버 팜을 떠나지 않기 때문이며, 즉 이것이 내부 핸드오프 및 전송을 나타내기 때문이다.
페이로드 "필드" - 게이트웨이 미디어 노드를 통해 SDNP 클라이언트에 들어가는 들어오는 데이터 패킷의 페이로드 처리가 도 127에 도시되어 있으며, 여기서 들어오는 IP 패킷(1374B)은 암호문(1393)을 포함하는 암호화된 페이로드를 추출하기 위해 먼저 언팩되고, 그 후 암호화가 발생한 영역으로부터 적절한 키를 사용하여, 또한 필요에 따라 이것이 발생하였을 때의 시간이나 상태를 사용하여 해독된다. 결과적인 페이로드는 스크램블되었다면 적절한 영역 및 상태 보안 설정을 사용하여 언스크램블되어야만 하는 평문(1392)을 포함한다. 다음에, SDNP 프리앰블은 벗겨져, 대응하는 헤더(Hdr J)를 갖는 정크 필드뿐만 아니라 다양한 필드를 갖는, 이 경우에는 대응하는 헤더(Hdr 9)를 갖는 필드(9)를 포함하는 콘텐트 데이터 패킷(1391)을 나타낸다.
도 127에도 도시된 대안적인 실시예에 있어서, 들어오는 IP 패킷(1460)은 해독되고 언스크램블되어, 그 프리앰블은 제거되고, 또한 2개의 유효한 데이터 필드-대응하는 헤더(Hdr 6)를 갖는 필드 6 및 대응하는 헤더(Hdr 8)을 갖는 필드 8을 생성하도록 파싱된다. 그 후, 이들 패킷은 이에 따라 새로운 IP 패킷 및 SDNP 패킷을 적절히 형성하도록, 다른 필드와 병합될 수 있다.
중첩된 필드 데이터 구조를 사용하여, 그 자신의 헤더를 갖는 여러 개의 데이터 필드를 하나의 패킷의 페이로드로 패킹하는 것은 더 큰 상자 안에 여러 상자를 배치하는 것과 매우 같다. 데이터의 SDNP 재패킷팅 프로세스, 즉 상자 열기, 더 작은 상자를 꺼내어 이들을 새로운 큰 상자로 넣는 과정은 데이터 세그먼트 라우팅 시 많은 선택을 포함한다. 패킷 손실을 피하기 위해, 동일한 원본의 데이터 세그먼트는 다른 데이터, 대화, 및 코뮤니케로부터의 데이터 세그먼트와 동일한 필드에 혼합되지 않지만, 그러나 헤더에 의해 식별되었을 때 또한 송신자에 의해 배치되었을 때 독특하게 분리되는 것으로 존재하는 것이 바람직하다. 예를 들어, 도 128에 있어서, SDNP 또는 IP 데이터 패킷(도시되지 않음)으로부터의 들어오는 페이로드(1461, 1393)는 해독 동작(1032)을 사용하여, 가능하기로는 상이한 상태 또는 영역과는 상이한 해독 키를 사용하여 모두 해독되어, 2개의 평문 페이로드(1932, 1462)로 나타난다. 혼합 동작(1061)은 페이로드(1392 및 1462)를 조합하고, 파싱 후, 패킷(1464)을 포함하는 필드(6), 패킷(1463)을 포함하는 필드(8), 패킷(1459)을 포함하는 필드(9)를 포함하는 3개의 필드를 위한 콘텐트를 생성하며, 이들은 데이터 콘텐트(1470)를 함께 형성한다. 3개의 패킷(1459, 1463, 1464)은 개별적으로 저장되거나 또는 긴 패킷으로 병합될 수 있다. 그 SDNP 헤더때문에 각각의 데이터 필드는 이들이 SDNP 나 IP 패킷에서 제거 되었더라도 쉽게 식별된다. 총괄하여, 데이터 콘텐츠(1470)는 그 지정 순간에 미디어 노드에 존재하는 데이터를 나타낸다. 프로세스는 패킷이 SDNP 네트워크를 횡단함에 따라, 콘텐츠가 끊임없이 변화하는 동적이다. 소정의 시간 후, 더 많은 들어오는 데이터를 기다릴 이유가 없을 때, 데이터 콘텐츠(1470)는 분할 동작(1057)에 의해 새로운 조합으로 분할되고, 이에 따라 페이로드(1472)는 3개의 필드, 즉 필드(9)로부터의 데이터 세그먼트(9C), 필드(8)로부터의 데이터 세그먼트(8B), 및 필드(6)로부터의 데이터 세그먼트(6C, 6D)를 포함한다. 이들 필드의 수는 페이로드(1472) 내로 운반된다. 원한다면, 평문은 스크램블되고, 그 후 이는 페이로드(1474)를 생성하기 위해 현 상태에서 그리고 현 영역에 대해 암호화 동작(1026)을 사용하여 암호화되며, SDNP 패킷 또는 IP 패킷과 조립되어 그 길을 따라 라우팅될 준비가 되어 있다.
또한, 분할 동작(1057)은 3개의 필드, 즉 데이터 세그먼트(9B, 9A, 9F, 9E)를 포함하는 필드(9), 오직 데이터 세그먼트(8F)만 포함하는 필드(8), 및 데이터 세그먼트(6F)를 포함하는 필드(6)에 대한 데이터 세그먼트를 포함하는 제2 페이로드(1471)를 생성한다.
도시된 바와 같이, 페이로드(1471, 1472)의 모든 필드는 또한 하나 또는 그 이상의 정크 데이터 세그먼트를 포함한다. 재스크램블링이 실행되지 않는 한, 스크램블된 페이로드(1471)는 그 후 페이로드(1473)를 생성하기 위해 현 상태에서 그리고 현 영역에 대해 암호화 동작(1026)을 사용하여 암호화되며, SDNP 패킷 또는 IP 패킷과 조립될 준비가 되어 있다. 마찬가지로, 페이로드(1474)를 생성하기 위해 현 상태에서 그리고 현 영역에 대해 암호화 동작(1026)을 사용하여 암호화되며, SDNP 패킷 또는 IP 패킷과 조립될 준비가 되어 있다. 이 도면에서, IP 또는 SDNP 어드레스 및 나머지 데이터 패킷은 명확함을 위해 도시되지 않았다.
재패킷팅의 동적 특성이 도 129a에 도시되어 있으며, 여기서 시간(t4) 및 대응하는 상태(994)에서, 필드(Fld 91, Fld 92)로부터의 데이터 세그먼트를 포함하는 페이로드(1483A, 1483B)는 각각 하이브리드 페이로드(1484A)를 생성하기 위해 혼합 동작(1061)을 사용하여 혼합된다. 시간(t5) 및 대응하는 상태(995)에서, 혼합 동작(1061)은 하이브리드 긴 페이로드(1485A)를 생성하기 위해, Fld 93 에 대한 데이터를 포함하고, 헤더(Hdr 91)를 갖는 필드(91)에서 스크램블되는 순서로 데이터 세그먼트(9B, 9A, 9F 및 9E), Hdr 91를 갖는 데이터 세그먼트(9C), 및 Hdr 93을 갖는 데이터 세그먼트(9D)를 포함하는 페이로드와 하이브리드 페이로드(1484A)를 조합한다. 시간(tf) 및 상태(999)에서, 휴대폰(32)에 의해 호스트된 애플리케이션(1335)은 하이브리드 다중 필드 페이로드(1485A)를 처리하며, 또한 순차적으로 배치된 데이터 세그먼트(9A 내지 9F)를 포함하는 본래의 데이터 시컨스(1489A)를 재조립한다.
이전에 여기에 도시된 일부 경우에 있어서, 다른 데이터 세그먼트나 필드가 도착하기를 기다릴 동안, 일부 데이터 세그먼트나 필드를 임시로 저장할 필요가 있을 수도 있다. 이 저장 동작은 내부 미디어 노드 또는 게이트웨이 미디어 노드를 포함하여 SDNP 네트워크의 임의의 지정된 노드 내에서 발생할 수 있다. 대안적으로, 상기 저장은 휴대폰, 태블릿, 노트북 등에서 호스트된 클라이언트 애플리케이션 내에서 발생할 수 있다. 그러한 예가 도 129b에 도시되어 있으며, 여기서 시간(t4)에서 필드(91 및 92)로부터 데이터 세그먼트를 포함하는 페이로드(1483A, 1483B)는 하이브리드 페이로드(1484A)를 생성하기 위해 혼합 동작(1061)에 의해 혼합된다. 이런 새로운 페이로드는 구성요소 필드(1485B, 1485C) 또는 긴 하이브리드 페이로드(1484A)로서 네트워크 캐시(1550)에 정체 상태(stasis)로 유지된다. 마지막으로, 페이로드(1485D)가 도달하는 시간(t5)에서, 네트워크 캐시(1550)의 콘텐트는 혼합 동작(1061)으로 해제되어, 시간(t6) 및 대응하는 상태(996)에서 필드(Fld 91, Fld 92)를 가로질러 분할된 데이터 세그먼트(9A 내지 9F)를 포함하는 하이브리드 페이로드(1486A)를 생성한다. 시간(tf) 및 상태(999)에서, 휴대폰(32)에 의해 호스트된 애플리케이션(1335)은 하이브리드 다중 필드 페이로드(1486A)를 처리하고, 그리고 순차적으로 배치된 데이터 세그먼트(9A 내지 9F)를 포함하는 본래의 데이터 시컨스(1489A)를 재조립한다.
본 발명의 다른 실시예에 있어서, 필드의 최종 재조립 및 캐싱은 휴대폰(32)상의 애플리케이션(1335) 내에서, 즉 SDNP 클라우드가 아닌 클라이언트의 애플리케이션 내에서 발생한다. 도 129c에 도시된 바와 같이, 시간(t4)에서, 필드(91, 92)로부터의 데이터 세그먼트를 포함하는 페이로드(1483A, 1483B)는 혼합 동작(1061)에 의해 혼합되어 하이브리드 페이로드(1484A)를 생성하고, 이는 휴대폰(32)의 애플리케이션(1335)으로 즉시 전달되어, 보안 클라이언트 애플리케이션 캐시(1551)에 페이로드(1484C, 1484D)로서 유지된다. 페이로드(1485E)가 시간(t4)에 도달하고, 이어서 시간(t5) 및 대응하는 상태(995)에서 휴대폰(32)의 애플리케이션(1335)으로 지향되었을 때, 애플리케이션(1335)은 시간(tf)에서 순서대로 배치된 데이터 세그먼트(9A 내지 9F)를 포함하는 본래의 데이터 패킷(1489A)을 재조립할 수 있다.
SDNP 패킷의 클라이언트 재구성을 요약하는 요약 흐름도가 도 129d에 도시되어 있으며, 여기서 하나 또는 다수의 암호문 블록을 포함하는 단일 채널 데이터 패킷(1490)은 해독 동작(1032)에 의해 해독되어, 다중 필드 평문(1491)을 생성하며, 이는 본래의 데이터 패킷(1493)을 생성하는 다중 필드 평문 스트링(1492A, 1492B, 1492C)을 생성하도록 언스크램블링 동작(928)에 의해 언스크램블되고, 그 후 이는 본래의 데이터 패킷(1493)을 생성하도록 파싱 동작(1087) 및 디정킹(도시되지 않음)을 포함하는 혼합 동작(1061)에 의해 병합된다. 마지막으로, 데이터 패킷(1493)은 오디오 코덱(1385)에 의해 음성 또는 음파(1384A)로 변환된다.
명령 및 제어 - 본 발명에 따른 SDNP 통신의 최종 요소로서, 시그널링 노드에 의한 미디어 노드의 명령 및 제어는, 보안 또는 오디오 충실도를 희생시키지 않으면서, 높은 QoS 및 실시간 패킷의 낮은 대기 시간 전달을 보장하는 주요한 구성요소가다. 클라이언트, 대화, 및 데이터 패킷의 우선순위 및 라우팅을 결정하는 데 사용된 기본 결정 트리의 일 예가 도 130에 도시되어 있다. 도시된 바와 같이, 태블릿(33)을 나타내는 클라이언트 노드(C2,1)가 시그널링 서버(1365)의 시그널링 노드에 전화할 것을 요청하였을 때, 이는 명령 및 제어 패킷(1495A)에 발신자가 접촉하고자 하는 사람뿐만 아니라 호출의 특성, 즉 음성 호출인지, 비디오 호출인지, 그 긴급성, 바람직한 전달 방법, 예를 들어 정상적인 최상의 노력, 보상된 전달, VIP 전달, 등을 지정한다. 시그널링 노드(S)는 요청, 클라이언트의 비즈니스 상태, 지불 이력, 또는 임의의 수의 비즈니스 고려 사항에 기초하여 "선택 전달 방법"[단계(1500)]을 사용하여 전달 요청(1499A)을 해석한다. 몇 가지 결과가 발생할 수 있다. 고객이 그 볼륨 또는 수입 잠재력에 기초하여 VIP 또는 선호되는 클라이언트라면, 통신 세션이 VIP로서 태그될 것이다. VIP 전달은 또한 레이스 라우팅으로서 알려진, 본 발명에서 이하에 기재되는 특수 성능 부스트를 이용할 수 있다.
가장 중요한 요소가 전달이 보장된 파일이라면, 보장된 패킷 전달이 사용될 수 있으며, 즉 패킷의 다중 중복 복사본을 송신하고, 실시간 성능이 희생되더라도, 패킷 손실의 위험을 최소화하기 위해 노드간 홉의 수를 최소화한다. 특별 전달은 고객 지정 인증 절차를 포함할 수 있다. 그렇지 않으면 정상적인 SDNP 라우팅이 사용될 것이다. 도 130에 있어서, 호출될 사람의 어드레스 또는 전화번호(1499B)와 함께, 선택 전달 방법[단계(1500)] 결정의 출력은 동작 "결정 및 순위 지정 라우팅 옵션"에 영향을 미치는 라우팅을 지배하는 데 사용된다[단계(1501)]. 일단 루트 옵션이 순위가 매겨지면, 긴급 요청(1499C) 및 러시 수수료(rush fee)와 같은 임의의 지정한 금융 고려 사항이 결정 "패킷 긴급성 선택"[단계(1502)]에 의해 판단되고, 이에 따라 출력은 정상, 우선순위, 긴급, 및 오디오 품질이 희생되지 않는다는 조건 하에 데이터를 전송하기 위한 더 낮은 비용 "스네일" 옵션을 포함할 수 있다
라우팅 옵션[단계(1501)] 및 긴급 선택[단계(1502)]의 조합은 시그널링 노드(S)가 각각의 패킷, 프레임, 또는 데이터 세그먼트에 대한 라우팅을 가장 잘 선택하는 것을 허용한다[단계(1503)]. 선택된 루트가 다중 영역을 통과하였다면, 이는 각 영역에 대해 다양한 보안 설정[단계(1504)]을 포함할 것이다. 시드, 해독 키(1030), 및 다른 보안 관련 정보를 포함하는 이 데이터는, 그 후 퍼스트 마일 및 라스트 마일에 대한 IP 패킷을 포함하는 모든 데이터 패킷에 대한 프리앰블을 생성하는 데 사용되는 메시형 전송을 위해 노드 별 라우팅, 분할, 및 혼합과 조합되며, 총칭하여 프리앰블(1505B)로 표현되는, SDNP 영역(U2) 프리앰블(1505A), SDNP 영역(U1) 프리앰블(1505C), 및 SDNP에서의 메시형 전송을 위한 다중 SDNP 영역(Z1) 프리앰블을 포함한다. 프리앰블(1505A, 1505B, 1505C) 등은 그 후 IP 어드레스와 SDNP 어드레스와 결합되어, 다양한 IP(인터넷 프로토콜) 및 SDNP 패킷을 생성한다. 이들 라우팅 명령은 클라이언트 노드(C2,1)로부터 SDNP 게이트웨이 미디어 노드로의 호출 또는 코뮤니케에 대한 라우팅을 상세히 설명하는 태블릿(33)에 송신된 IP 패킷(1506A), 미디어 서버(1118)로 송신되고 또한 SDNP 클라우드의 미디어 노드(Mi,j) 사이에서 호출 또는 코뮤니케를 라우팅하기 위해 사용되는 IP 패킷(1506B), 및 SDNP 게이트웨이 노드로부터 휴대폰(32)을 나타내는 클라이언트 노드(C1,1)로 호출 또는 코뮤니케에 대한 라우팅을 상세히 설명하는 태블릿(33)에 송신된 IP 패킷(1506C)을 포함한다. 이런 방식으로, 미디어 노드는 이들이 시그널링 서버로부터 수신하는 명령, 인터넷 기반 OTT 통신에 사용되는 라우팅 절차와 완전히 반대되는 메커니즘에 따라 들어오는 페이로드를 지향시키는 데만 필요하다.
예를 들어, 이미 언급한 바와 같이, 인터넷 라우터는 그 패킷을 가장 낮은 전파 지연 또는 가장 짧은 대기 시간으로 라우팅 시 필연적으로 클라이언트의 최상의 이익에 염두를 두지 않는 많은 상이한 ISP 및 전화 회상에 의해 호스트된다. 본 발명에 따른 SDNP 통신과는 달리, 인터넷 라우터는 실시간 오디오 또는 비디오를 운반하는 데이터 패킷을 정크 메일과 구별할 수 없다. 실시간 통신에서는 대기 시간이 중요하다. 수백 밀리 초의 지연은 QoS 에 눈에 띄게 영향을 미치며, 또한 일관된 음성 대화를 유지하는 데 500 밀리 초 이상의 지연은 견딜 수 없게 된다. 이러한 그리고 많은 여러 가지 이유로, 여기에 기재된 SDNP 네트워크의 실시간 성능은 전파 지연을 지속적으로 모니터링하며, 또한 그 전송이 뒤따를 때 각 실시간 데이터 패킷에 대한 최상의 루트를 선택한다.
도 131에 도시된 바와 같이, "IP Addr TB", 즉 태블릿(33)으로부터 "IP Addr CP", 즉 휴대폰(32)으로의 요청된 라우팅은 많은 잠재적인 루트를 갖는다. 전파 지연 표(1416)에서 추적되고 기록되는 각각의 노드 간 전파 지연은 끊임없이 변한다. 더욱이, 최소의 미디어 서버를 통한 통화의 라우팅은 반드시 가장 낮은 대기 시간 통신으로 나타나는 것은 아니다. 예를 들어, 클라이언트 노드(C2,1)로부터 미디어 노드(Ma,f)로 그리고 클라이언트 노드(C2,1)로 호출을 라우팅하는 것은, 55 + 60 = 115 ms의 총 전파 지연을 갖는 반면에, 음영의 경로에 의해 도시되고 도 132a에 상세히 도시된 클라이언트 노드(C1,1)로 직접적으로 하는 대신에, 미디어 노드(Ma,d)를 통해 미디어 노트(Ma,f)로부터의 호출을 라우팅하는 것은 55 + 15 + 15 = 85 ms의 지연을 나타내며, 이는 이것이 추가적인 미디어 노드를 통해 전송하더라도 20 % 더 빠르다. SDNP 동적 라우팅에 있어서, 시그널링 서버(S)는 항상 가장 낮은 대기 시간을 유지할 뿐만 아니라 강화된 보안을 위해 데이터를 단편화하고 메시형 전송을 사용하여 콘텐트를 전송하는 최상의 경로 조합을 고려한다. 도시된 바와 같이, 도 132b에 상세히 도시된 미디어 노드(Ma,h)를 통해 음영 처리된 경로에 의해 도시된 다른 짧은 지연 경로는 포함된 많은 홉 수에도 불구하고 다른 부분에 비해 여전히 우수한 25 + 20 + 15 + 15 + 15 = 105 ms의 누적 전파 지연을 갖는다.
명령 및 제어의 다른 중요한 기능은 패킷 재구성을 지시하는 것이다. 이 기능은 클라우드에서 SDNP 패킷을 혼합, 분할, 및 재라우팅하는 데 중요하다. 도 132c는 시그널링 노드(S)가 미디어 서버, 이 예에서는 지정 노드에 들어가고 나가는 데이터 패킷을 관리하기 위해 미디어 노드(Ma,q)를 호스트하는 방법을 설명한다. 명령 및 제어 데이터 패킷(1496C)을 사용하여, 들어오는 SDNP 패킷 및 그 페이로드 프레임에 대한 모든 관련 보안 설정(1504)에 대한 완전한 지식에 의해, 시그널링 노드(S)는 나가는 데이터 패킷(1497B)을 생성하도록 미디어 노드(Ma,q)에게 들어오는 SDNP 패킷(1497A)을 어떻게 처리할지를 명령한다. 도시된 바와 같이, 다중 프레임을 포함하는 페이로드(1511A)를 추출한 후, DUM 동작(1210)에서의 미디어 노드(Ma,q)는 이들 각각이 생성되었을 때 사용되는 상태 정보(920), 시드(929), 및 해독 키(1030)에 기초하여, 페이로드(1511A)로부터 모든 프레임, 및 다른 들어오는 패킷(도시되지 않음)에서 페이로드로부터의 모든 프레임을 해독하고 언스크램블하며, 그 후 긴 패킷을 형성하기 위해, 이 경우에는 모든 독립 프레임에 의해 총칭하여 데이터 프레임(1512) 데이터 프레임(1, 6, 9, 12, 23, 31)으로서 및 개별적으로 데이터 프레임(1, 6, 9, 12, 23, 31)으로서 각각 표현되는, 모든 들어오는 필드를 혼합한다.
그 후, 이 데이터는 SDNP zip 분류기(1310)에 공급되어, 프레임을 프레임의 그룹들로 분류하며, 각각의 그룹은 명령 및 제어 패킷(1495A)에서 지정된 호출 정보에 응답하여 각각의 프레임 또는 SDNP 패킷을 위해 시그널링 노드(S)에 의해 이미 공급된 모두 SDNP 패킷(1506B)에서의 라우팅 정보에 따라, SDNP 클라우드에서 그 다음 홉 상에 공통의 목적지를 갖는다. 그 후, SSE 동작(1213)은 현재 상태(920) 정보, 업데이트된 시드(929), 및 새로운 암호 해독 키(1030)를 사용하여 공통 목적지를 갖는 그룹으로 프레임을 분할한다. 프레임(1, 9, 23)에 대한 데이터를 포함하는 페이로드인 하나의 이러한 페이로드는, 이전의 페이로드(1511A)가 프레임(1, 6, 9)에 대한 데이터로 구성된 반면에, 미디어 노드(Ma,j)를 위해 목적지가 정해진다. 따라서 시그널링 노드(S)에 의해 지시된 바와 같이, 미디어 노드(Ma,q)는 프레임 6 데이터를 제거하고, 나가는 SDNP 패킷(1487B) 내에 조립되고, 또한 미디어 노드(Ma,j)로 앞으로 송신되는 페이로드(1511B)를 형성하기 위해 이를 프레임 23 데이터로 대체한다.
7 계층 OSI 모델을 사용하면, 도 133a에 도시된 SDNP 연결은, 오직 2개의 클라이언트, 이 경우에는 태블릿(33) 및 휴대폰(32)에 의해서만 호스트되는 각각의 SDNP 애플리케이션(1335) 사이의 종단 간 보안 통신을 지원하는, 보안 게이트웨이 대 게이트웨이 터널(1522)을 나타낸다. 본 발명의 실시예에 있어서, 물리적 및 데이터 링크 계층(1525)은 전형적으로 SDNP 동작을 실현하기 위한 임의의 특별한 설계를 수반하지 않는다. 그러나 SDNP 가 보안을 위해 SDNP 클라우드 내의 모든 단일 홉 라우팅을 제어하여 대기 시간을 최소화하고 최상의 QoS를 제공하기 때문에, 네트워크 계층 3은 인터넷과 완전히 상이하게 동작한다. 전송 계층 4는 제어를 위해 TCP를 사용하고 실시간 데이터에 대해 UDP의 증대 버전을 사용하지만, 그 방법 및 우선순위의 변경은 SDNP 패킷, 페이로드, 또는 프레임이 무엇이고 또한 이것이 어떤 우선순위를 갖고 있는지에 대한 지식에 기초한다. 세션 계층 5는 SDNP 동작에 고유한 것으로서, 미디어 채널 상으로 또는 신호 채널 상으로 송신된 명령 및 제어 패킷을 통해 통신되는 명령 및 제어 정보는 라우팅, 품질, 전달 상태, 및 우선순위를 포함하여 모든 세션의 관리를 결정한다.
SDNP 통신에서 표현 계층 6은 클라이언트의 자체 암호화와 관련 없는 네트워크 홉 대 홉 암호화 및 스크램블링을 실행한다.
애플리케이션 계층 7에서 SDNP 통신 또한 고유한데, 그 이유는 SDNP 가능 애플리케이션이 단편화된 데이터를 혼합 및 복원하고 또한 단편화된 페이로드의 부분이 도달하지 않았다면 다시 상황별 전송을 할 수 있어야만 하기 때문이다.
위의 모든 보안 및 공개된 SDNP 네트워크의 성능은 클라이언트 암호화 및 개인 키 관리를 사용하지 않고도 달성된다. 클라이언트 애플리케이션도 암호화되었다면(예를 들어, 사설 회사의 보안), VPN 과 같은 터널링이 데이터 단편화와 조합되어, 새로운 타입의 보안 통신-도 133b에 도시된 표현 계층 6 및 애플리케이션 계층 7의 하이브리드인 단편화된 터널링된 데이터를 형성한다.
본 발명에 따른 SDNP 통신의 하나의 독특한 양태는 도 134에 도시된 "레이스 라우팅"의 예이다. SDNP 네트워크가 단편화된 데이터의 메시형 전송에 기초하기 때문에, 메시형 네트워크를 가로질러 2중 또는 3중으로 상기 단편화된 데이터 필드의 송신에 포함되는 오버헤드는 없다. 개념 상, 보안을 희생하지 않으면서 가능한 최단 시간 지연을 달성하기 위해, 페이로드는 서브패킷으로 분할되어 2개의 보완 프레임으로 구성된다. 레이스 라우팅에서 하나의 루트에 의해 하나의 프레임을 그리고 다른 하나에 의해 제2 프레임을 송신하기보다는, 각각의 프레임의 여러 사본을 상이한 루트를 통해 전송하고, 그 목적지에 먼저 도착하는 첫 번째 프레임은 사용되는 것이다. 나중에 도착하는 사본은 단순히 폐기된다. 예를 들어, 도시된 바와 같이, 프레임(91)은 2개의 경로, 특히 경로(1540, 1541)를 통해 전송되는 반면, 프레임(92)은 다중 경로, 즉 경로(1541, 1543)에 의해 전송된다. 경로의 조합이 먼저 하나의 프레임-91 페이로드 및 하나의 프레임-92 페이로드를 전달하든, 즉 사용될 조합이다.
요약 - 전술한 기재는 본 발명에 따른 SDNP 통신에 의해 달성되는 성능, 대기 시간, 품질, 보안 및 프라이버시에서 다수의 이점을 나타낸다. 표(135)는 공개된 보안 동적 네트워크 및 프로토콜(SDNP)을 오버 더 탑 또는 OTT 통신업체, 가상 사설망 또는 VPN, 및 피어 투 피어 또는 PTP 네트워크와 비교하고 있다. 표에 나타난 바와 같이, 모든 경쟁 및 선행 기술의 통신 방법은 통신 콘텐트를 보호하기 위해 암호화에만 의존하여, 한 번에 하나의 경로를 통한 전송에 의존한다. VPN의 암호화는 기존의 모든 통신 방법을 통해 피싱, 스니핑 및 프로파일링을 사이버 공격에 대한 취약성으로 사용할 수 있게 하는 통신 상대방의 출발지 및 목적지 어드레스를 노출시킨다. 이들 모두에서 보안은 정적이며, 패킷이 네트워크를 횡단할 때 일정하게 유지된다. 종래 기술의 방법 중 어느 것도 통신의 라우팅을 제어하지 않기 때문에, 통신이 탈취되었는지의 여부를 검출할 수 없으며, 또한 이들은 네트워크의 대기 시간이나 실시간 성능을 제어할 수 없다. 더욱이 OTT 및 PTP 네트워크는 고 대역폭 라우터가 통화를 지원할 수 있을지의 여부를 보장하지 않아, 음질 및 끊임없는 통화 단절의 지속적인 시프트로 이어진다. 마지막으로, 공개된 SDNP 통신 방법과 메시형 네트워크를 제외한 모든 경우에, 해커가 암호화 코드를 파괴하였다면, 해커는 보안 위반이 발견되기 전에 지식을 사용하여 심각한 피해를 입힐 수 있으며, 따라서 사적 또는 개인 통신의 모든 콘텐츠를 읽거나 들을 수 있다.
기재된 SDNP 네트워크에서 사이버 공격자가 암호화를 파괴하더라도, 임의의 하나의 패킷의 데이터는 왜곡되고, 불완전하며, 다른 메시지와 혼합되어, 잘못된 순서로 스크램블되며, 기본적으로 임의의 SDNP 패킷의 콘텐트는 그 의도된 사람을 제외하고는 무용하다. 더욱이 네트워크의 암호화가 파괴되었더라도, 양자 컴퓨팅을 사용하더라도 수십 년이 걸릴 수 있는 도전 과제가 발생하여, 1/10 초 만에 전체 SDNP 클라우드를 횡단하는 모든 패킷의 동적 암호화가 변경된다. 이는 해커가 될 수 있는 사람이 모두 100 ms마다 시작해야 한다는 것을 의미한다. 이러한 동적 방법에 의해, 5 분짜리 대화가 단일 데이터 스트링에서 완전히 사용할 수 있더라도, 해독에 수백 년이 걸린다. 이 외에도 데이터 단편화, 동적 스크램블링, 및 동적 혼합과 재라우팅의 추가에 의해, 암호화를 깨뜨림으로써 얻게 되는 이점은 완전히 환상에 불과하다.
동적 스크램블링, 단편화된 데이터 전송, 익명 데이터 패킷 및 동적 암호화를 포함하여, 여기에 기재된 보안 동적 네트워크 및 프로토콜에 의해 실현되는 보안의 여러 수준의 조합은 단순한 정적 암호화가 제공하는 보안을 훨씬 능가한다. 여기에 기재된 바와 같은 SDNP 통신에서, 단일 대화, 대화, 또는 다른 통신으로부터의 데이터 패킷은 단일 루트를 가로질러 횡단하지 않지만, 그러나 무의미한 데이터 단편의 이해할 수 없는 스니핏으로 분할되고, 순서를 벗어나 스크램블되며, 콘텐트에서, 혼합에 의해, 및 데이터의 기본 보안 자격 증명에 의해 연속적으로 변화하는 다중 경로를 통해 송신된다. 결과적인 통신 방법은 최초의 "하이퍼-보안"통신 시스템을 나타낸다.

Claims (20)

  1. 클라우드를 통해 디지털 데이터를 포함하는 패킷을 송신하는 방법에 있어서,
    상기 클라우드는 서버 상에 호스트되는 복수의 미디어 노드를 포함하고,
    상기 패킷은 복수의 데이터 세그먼트를 포함하며,
    상기 방법은,
    상기 패킷이 상기 클라우드의 제1 미디어 노드를 통과할 때, 상기 패킷에서 상기 데이터 세그먼트의 순서를 변경함으로써 상기 패킷을 스크램블링하는 단계;
    상기 패킷을 상기 제1 미디어 노드로부터 상기 클라우드 내의 제2 미디어 노드로 전송하는 단계;
    상기 패킷과 관련한 상태를 상기 제1 미디어 노드로부터 상기 제2 미디어 노드로 전송하는 단계;
    상기 패킷을 언스크램블링하고 그 후 스크램블링함으로써, 상기 패킷을 상기 제2 미디어 노드에서 재스크램블링하는 단계 - 상기 제2 미디어 노드에서 상기 패킷을 스크램블링하는 데 사용된 방법은, 상기 제1 미디어 노드에서 상기 패킷을 스크램블링하는 데 사용된 방법과는 상이함 - ; 및
    상기 제2 미디어 노드 또는 상기 제2 미디어 노드와 관련된 서버에 선택기를 제공하는 단계 - 상기 선택기는 스크램블링 방법의 목록을 포함하고, 상기 스크램블링 방법의 각각은 상태와 관련되고, 상기 제2 미디어 노드 또는 상기 제2 미디어 노드와 관련된 상기 서버는 상기 패킷을 언스크램블하기 위해 상기 선택기의 상기 스크램블링 방법의 목록으로부터 특별한 스크램블링 방법을 선택하기 위해 상기 제1 미디어 노드로부터 전송된 상기 상태를 사용함 - ;를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 제1 미디어 노드는 상기 패킷이 상기 클라우드에 들어가는 게이트웨이 미디어 노드인, 방법.
  3. 제 1 항에 있어서,
    상기 제2 미디어 노드는 상기 패킷이 상기 클라우드를 빠져나오는 제2 게이트웨이 미디어 노드인, 방법.
  4. 제 1 항에 있어서,
    제1 DMZ 서버는 상기 제1 미디어 노드와 관련되고, 제2 DMZ 서버는 상기 제2 미디어 노드와 관련되고, 상기 제1 및 제2 DMZ 서버 각각은 상기 클라우드의 미디어 노드가 상기 제1 및 제2 DMZ 서버 중 하나에 저장된 파일에 액세스할 수 없도록 격리되고,
    상기 방법은 상기 제2 미디어 노드로부터 상기 제2 DMZ 서버로 상기 상태를 나타내는 데이터를 전송하는 단계를 추가로 포함하는, 방법.
  5. 제 1 항에 있어서,
    상기 제1 미디어 노드는 시드의 상기 상태를 상기 제2 미디어 노드로 전송하고, 상기 시드는 상기 상태를 나타내는 위장된 디지털 값인, 방법.
  6. 제 4 항에 있어서,
    상기 제2 DMZ 서버는 숨겨진 번호 생성기를 포함하고, 상기 숨겨진 번호 생성기는 상기 상태를 나타내는 데이터로부터 숨겨진 번호를 계산하기 위해 숨겨진 번호 알고리즘을 사용하는, 방법.
  7. 제 4 항에 있어서,
    상기 제2 DMZ 서버에 선택기를 제공하는 단계를 포함하고,
    상기 제2 DMZ 서버는 상기 선택기의 스크램블링 방법 목록으로부터 스크램블링 방법을 선택하기 위해 상기 상태를 사용하는, 방법.
  8. 제 1 항에 있어서,
    상기 상태는 상기 패킷이 상기 제1 미디어 노드에서 스크램블링되었던 시간에 기초하는, 방법.
  9. 제 1 항에 있어서,
    상기 상태는 상기 패킷이 상기 제1 미디어 노드에서 스크램블링되었을 때 상기 패킷이 위치한 영역에 기초하는, 방법.
  10. 제 7 항에 있어서,
    상기 제2 DMZ 서버에 의해 선택된 상기 스크램블링 방법을 상기 제2 미디어 노드로 전송하는 단계를 포함하고,
    상기 제2 미디어 노드는 상기 패킷을 언스크램블하기 위해 상기 스크램블링 방법을 사용하는, 방법.
  11. 제 4 항에 있어서,
    상기 제1 DMZ 서버는 스크램블링 방법을 선택하고, 상기 스크램블링 방법을 상기 제1 미디어 노드로 전송하며,
    상기 제1 미디어 노드는 상기 스크램블링 방법을 상기 패킷을 스크램블하기 위해 사용하는, 방법.
  12. 클라우드를 통해 디지털 데이터를 포함하는 패킷을 전송하는 방법에 있어서,
    상기 클라우드는 각각의 서버 상에 호스트된 복수의 미디어 노드를 포함하고,
    상기 방법은,
    상기 클라우드 내의 제 1 미디어 노드에서 상기 패킷을 암호화하는 단계;
    상기 패킷을 상기 제1 미디어 노드로부터 상기 클라우드 내의 제2 미디어 노드로 전송하는 단계;
    상기 패킷과 관련한 상태를 상기 제1 미디어 노드로부터 상기 제2 미디어 노드로 전송하는 단계;
    상기 패킷을 해독한 후 암호화함으로써, 상기 제2 미디어 노드에서 상기 패킷을 재암호화하는 단계 - 상기 제2 미디어 노드에서 상기 패킷을 암호화하는데 사용하는 방법은 상기 제1 미디어 노드에서 상기 패킷을 암호화하는데 사용되는 방법과 다름 - ; 및
    상기 제2 미디어 노드 또는 상기 제2 미디어 노드와 관련된 서버에 선택기를 제공하는 단계 - 상기 선택기는 암호화 방법의 목록을 포함하고, 상기 암호화 방법의 각각은 상태와 관련되고, 상기 제2 미디어 노드 또는 상기 제2 미디어 노드와 관련된 서버는 상기 패킷을 해독하기 위해 상기 선택기의 상기 암호화 방법의 목록으로부터 특별한 암호화 방법을 선택하기 위해 상기 상태를 사용함 - ;
    를 포함하는, 방법.
  13. 제 12 항에 있어서,
    제1 DMZ 서버는 상기 제1 미디어 노드와 관련되고, 제2 DMZ 서버는 상기 제2 미디어 노드와 관련되고, 상기 제1 및 제2 DMZ 서버 각각은 상기 클라우드의 미디어 노드가 상기 제1 및 제2 DMZ 서버 중 하나에 저장된 파일에 액세스할 수 없도록 격리되는, 방법.
  14. 제 12 항에 있어서,
    상기 제1 미디어 노드는 키에서 상기 상태를 상기 제2 미디어 노드로 전송하고,
    상기 키는 상기 상태를 나타내는 위장된 디지털 값인, 방법.
  15. 제 12 항에 있어서,
    상기 상태는 상기 패킷이 상기 제1 미디어 노드에서 암호화되었을 때 상기 패킷이 위치한 영역에 기초하는, 방법.
  16. 제 12 항에 있어서,
    상기 상태는 상기 패킷이 상기 제1 미디어 노드에서 암호화되었던 시간에 기초하는, 방법.
  17. 제 12 항에 있어서,
    상기 제1 미디어 노드는 상기 패킷이 상기 클라우드에 들어가는 게이트웨이 미디어 노드인, 방법.
  18. 제 12 항에 있어서,
    상기 제2 미디어 노드는 상기 패킷이 상기 클라우드를 빠져나오는 게이트웨이 미디어 노드인, 방법.
  19. 제 13 항에 있어서,
    상기 제2 DMZ 서버는 숨겨진 번호 생성기를 포함하고, 상기 숨겨진 번호 생성기는 상기 상태를 나타내는 데이터로부터 숨겨진 번호를 계산하기 위해 숨겨진 번호 알고리즘을 사용하는, 방법.
  20. 클라우드를 통해 디지털 데이터를 전송하는 방법에 있어서,
    상기 클라우드는 각각의 서버 상에 호스트된 복수의 미디어 노드를 포함하고,
    상기 방법은:
    상기 클라우드의 제 1 미디어 노드에서 제 1 패킷을 복수의 더 작은 패킷들로 분할하는 단계; 및
    상기 클라우드의 제 2 미디어 노드에서 제 2 패킷을 제 3 패킷과 혼합하는 단계를 포함하는, 방법.
KR1020177023539A 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜 KR102535915B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237016898A KR102661985B1 (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562107650P 2015-01-26 2015-01-26
US62/107,650 2015-01-26
US14/803,869 US9998434B2 (en) 2015-01-26 2015-07-20 Secure dynamic communication network and protocol
US14/803,869 2015-07-20
PCT/US2016/014643 WO2016190912A1 (en) 2015-01-26 2016-01-23 Secure dynamic communication network and protocol

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237016898A Division KR102661985B1 (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜

Publications (2)

Publication Number Publication Date
KR20170140157A KR20170140157A (ko) 2017-12-20
KR102535915B1 true KR102535915B1 (ko) 2023-05-23

Family

ID=56433517

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020237016898A KR102661985B1 (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜
KR1020247013745A KR20240058989A (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜
KR1020177023539A KR102535915B1 (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020237016898A KR102661985B1 (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜
KR1020247013745A KR20240058989A (ko) 2015-01-26 2016-01-23 안전한 동적 통신망 및 프로토콜

Country Status (14)

Country Link
US (2) US9998434B2 (ko)
EP (1) EP3251293B1 (ko)
JP (2) JP6741675B2 (ko)
KR (3) KR102661985B1 (ko)
CN (3) CN111800375A (ko)
AU (1) AU2016266557B2 (ko)
BR (1) BR112017016047A8 (ko)
CA (1) CA2975105C (ko)
IL (1) IL253679B (ko)
RU (2) RU2769216C2 (ko)
SG (3) SG10201909329TA (ko)
TW (1) TWI661691B (ko)
UA (1) UA123445C2 (ko)
WO (1) WO2016190912A1 (ko)

Families Citing this family (358)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4894826B2 (ja) * 2008-07-14 2012-03-14 ソニー株式会社 通信装置、通信システム、報知方法、及びプログラム
EP2700061A4 (en) 2011-04-22 2014-11-19 Expanergy Llc SYSTEMS AND METHOD FOR ANALYZING ENERGY CONSUMPTION
EP2786337A4 (en) 2011-11-28 2015-08-26 Expanergy Llc METHODS AND SYSTEMS OF AN ENERGY SEARCH ENGINE
JP6098114B2 (ja) * 2012-10-26 2017-03-22 アイコム株式会社 中継装置および通信システム
US9355279B1 (en) 2013-03-29 2016-05-31 Secturion Systems, Inc. Multi-tenancy architecture
US9317718B1 (en) 2013-03-29 2016-04-19 Secturion Systems, Inc. Security device with programmable systolic-matrix cryptographic module and programmable input/output interface
US9374344B1 (en) 2013-03-29 2016-06-21 Secturion Systems, Inc. Secure end-to-end communication system
US9524399B1 (en) 2013-04-01 2016-12-20 Secturion Systems, Inc. Multi-level independent security architecture
WO2015080746A1 (en) * 2013-11-28 2015-06-04 Hewlett-Packard Development Company, L.P. Cloud-based data sharing
US11256798B2 (en) 2014-03-19 2022-02-22 Bluefin Payment Systems Llc Systems and methods for decryption as a service
DK3120593T3 (en) 2014-03-19 2019-04-01 Bluefin Payment Sys Llc SYSTEMS AND PROCEDURE FOR MANUFACTURING FINGERPRINTING FOR CRYPTIC DEVICES
US9461973B2 (en) 2014-03-19 2016-10-04 Bluefin Payment Systems, LLC Systems and methods for decryption as a service
WO2015177789A1 (en) * 2014-05-20 2015-11-26 B. G. Negev Technologies And Application Ltd., At Ben-Gurion Universitiy A method for establishing a secure private interconnection over a multipath network
US11627639B2 (en) 2015-01-26 2023-04-11 Ievgen Verzun Methods and apparatus for HyperSecure last mile communication
US9998434B2 (en) * 2015-01-26 2018-06-12 Listat Ltd. Secure dynamic communication network and protocol
US11277390B2 (en) 2015-01-26 2022-03-15 Listat Ltd. Decentralized cybersecure privacy network for cloud communication, computing and global e-commerce
US9794522B2 (en) * 2015-02-06 2017-10-17 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
EP3248296B1 (en) * 2015-02-12 2021-09-08 Huawei Technologies Co., Ltd. Full duplex radio with adaptive reception power reduction
US10419315B2 (en) * 2015-04-03 2019-09-17 Lg Electronics Inc. Method for performing a packet delay calculation in a PDCP entity in a wireless communication system and a device therefor
US20160299844A1 (en) * 2015-04-08 2016-10-13 Sandisk Enterprise Ip Llc Mapping Logical Groups of Data to Physical Locations In Memory
WO2016163032A1 (ja) 2015-04-10 2016-10-13 富士通株式会社 無線通信システム、基地局、移動局および処理方法
WO2016168503A1 (en) * 2015-04-15 2016-10-20 Melrok, Llc Secure broadcast systems and methods for internet of things devices
US10098021B2 (en) * 2015-05-28 2018-10-09 Apple Inc. VoLTE quality of service enhancement with preconditions
US10051346B2 (en) * 2015-06-17 2018-08-14 Mueller International, Llc Data communication using a private preamble
US10419290B2 (en) * 2015-07-02 2019-09-17 Perspecta Labs Inc. Systems and methods of in-band network configuration
US9992255B2 (en) * 2015-07-09 2018-06-05 Acer Incorporated Apparatuses and methods for application-specific congestion control for data communication (ACDC), and storage medium thereof
US11461010B2 (en) * 2015-07-13 2022-10-04 Samsung Electronics Co., Ltd. Data property-based data placement in a nonvolatile memory device
US10282324B2 (en) 2015-07-13 2019-05-07 Samsung Electronics Co., Ltd. Smart I/O stream detection based on multiple attributes
US10509770B2 (en) 2015-07-13 2019-12-17 Samsung Electronics Co., Ltd. Heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
EP3731543B1 (en) * 2015-08-04 2024-02-28 Convida Wireless, LLC Internet of things end-to-end service layer quality of service management
US20180234315A1 (en) * 2015-08-07 2018-08-16 Nec Corporation Data division unit, communication device, communication system, data division method, and storage medium having data division program stored therein
US10243646B2 (en) * 2015-08-17 2019-03-26 The Mitre Corporation Performance-based link management communications
US9843929B2 (en) 2015-08-21 2017-12-12 Afero, Inc. Apparatus and method for sharing WiFi security data in an internet of things (IoT) system
US9503969B1 (en) 2015-08-25 2016-11-22 Afero, Inc. Apparatus and method for a dynamic scan interval for a wireless device
US10701018B2 (en) * 2015-08-27 2020-06-30 Mobilitie, Llc System and method for customized message delivery
US9794064B2 (en) * 2015-09-17 2017-10-17 Secturion Systems, Inc. Client(s) to cloud or remote server secure data or file object encryption gateway
US11283774B2 (en) 2015-09-17 2022-03-22 Secturion Systems, Inc. Cloud storage using encryption gateway with certificate authority identification
WO2017050500A1 (en) * 2015-09-25 2017-03-30 Sony Corporation Wireless telecommunications
US10708236B2 (en) 2015-10-26 2020-07-07 Secturion Systems, Inc. Multi-independent level secure (MILS) storage encryption
US10043026B1 (en) * 2015-11-09 2018-08-07 8X8, Inc. Restricted replication for protection of replicated databases
US10833843B1 (en) * 2015-12-03 2020-11-10 United Services Automobile Association (USAA0 Managing blockchain access
US10841203B2 (en) * 2015-12-11 2020-11-17 Qualcomm Incorporated Coordination of multiple routes for a single IP connection
US10805344B2 (en) * 2015-12-14 2020-10-13 Afero, Inc. Apparatus and method for obscuring wireless communication patterns
US10447784B2 (en) 2015-12-14 2019-10-15 Afero, Inc. Apparatus and method for modifying packet interval timing to identify a data transfer condition
US10091242B2 (en) 2015-12-14 2018-10-02 Afero, Inc. System and method for establishing a secondary communication channel to control an internet of things (IOT) device
US10817593B1 (en) * 2015-12-29 2020-10-27 Wells Fargo Bank, N.A. User information gathering and distribution system
US11860851B2 (en) * 2016-01-14 2024-01-02 Veniam, Inc. Systems and methods to guarantee data integrity when building data analytics in a network of moving things
US10201755B2 (en) * 2016-02-25 2019-02-12 Pick A Play Networks Inc. System and method for providing a platform for real time interactive game participation
US10142358B1 (en) * 2016-02-29 2018-11-27 Symantec Corporation System and method for identifying an invalid packet on a controller area network (CAN) bus
CN109391634A (zh) * 2016-03-02 2019-02-26 上海小蚁科技有限公司 建立通信的方法、终端和计算机可读存储介质
CN108781383B (zh) 2016-03-22 2022-02-22 Lg 电子株式会社 发送和接收数据单元的方法和用户设备
US10983507B2 (en) 2016-05-09 2021-04-20 Strong Force Iot Portfolio 2016, Llc Method for data collection and frequency analysis with self-organization functionality
US10732621B2 (en) 2016-05-09 2020-08-04 Strong Force Iot Portfolio 2016, Llc Methods and systems for process adaptation in an internet of things downstream oil and gas environment
US11774944B2 (en) 2016-05-09 2023-10-03 Strong Force Iot Portfolio 2016, Llc Methods and systems for the industrial internet of things
CA3045439A1 (en) 2016-05-09 2017-11-16 Charles Howard CELLA Methods and systems for the industrial internet of things
US11327475B2 (en) 2016-05-09 2022-05-10 Strong Force Iot Portfolio 2016, Llc Methods and systems for intelligent collection and analysis of vehicle data
JP6615045B2 (ja) * 2016-05-10 2019-12-04 アルパイン株式会社 通信装置、通信制御方法および通信システム
US10523660B1 (en) 2016-05-13 2019-12-31 MobileIron, Inc. Asserting a mobile identity to users and devices in an enterprise authentication system
US10673838B2 (en) * 2016-05-13 2020-06-02 MobileIron, Inc. Unified VPN and identity based authentication to cloud-based services
US10812851B2 (en) 2016-05-16 2020-10-20 Rovi Guides, Inc. Methods and systems for presenting media listings based on quality of service at a user device
US10341739B2 (en) 2016-05-16 2019-07-02 Rovi Guides, Inc. Methods and systems for recommending providers of media content to users viewing over-the-top content based on quality of service
EP3459199B1 (en) * 2016-05-20 2021-06-30 Nokia Technologies Oy Encryption management in carrier aggregation
US9916756B2 (en) 2016-05-24 2018-03-13 Iheartmedia Management Services, Inc. Broadcast traffic information bounding areas
US10051510B2 (en) 2016-05-27 2018-08-14 Corning Optical Communications Wireless Ltd Front-haul communications system for enabling communication service continuity in a wireless distribution system (WDS) network
US10079919B2 (en) 2016-05-27 2018-09-18 Solarflare Communications, Inc. Method, apparatus and computer program product for processing data
JP6618429B2 (ja) * 2016-06-13 2019-12-11 株式会社日立製作所 無線通信端末、無線通信システム及び通信制御方法
US10243785B1 (en) * 2016-06-14 2019-03-26 Amazon Technologies, Inc. Active monitoring of border network fabrics
US11237546B2 (en) 2016-06-15 2022-02-01 Strong Force loT Portfolio 2016, LLC Method and system of modifying a data collection trajectory for vehicles
US10484349B2 (en) * 2016-06-20 2019-11-19 Ford Global Technologies, Llc Remote firewall update for on-board web server telematics system
US10200110B2 (en) * 2016-06-30 2019-02-05 Ge Aviation Systems Llc Aviation protocol conversion
US10447589B2 (en) * 2016-07-07 2019-10-15 Infinera Corporation Transport segment OAM routing mechanisms
US10826875B1 (en) * 2016-07-22 2020-11-03 Servicenow, Inc. System and method for securely communicating requests
CN107666383B (zh) * 2016-07-29 2021-06-18 阿里巴巴集团控股有限公司 基于https协议的报文处理方法以及装置
US10412100B2 (en) * 2016-08-01 2019-09-10 The Boeing Company System and methods for providing secure data connections in an aviation environment
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US20180097839A1 (en) * 2016-10-01 2018-04-05 Neeraj S. Upasani Systems, apparatuses, and methods for platform security
US10097318B2 (en) 2016-10-07 2018-10-09 Trellisware Technologies, Inc. Methods and systems for reliable broadcasting using re-transmissions
CN110268687B (zh) * 2016-10-07 2022-03-08 维塔内特日本株式会社 使用已定义的数据定义的数据处理
US10264028B2 (en) * 2016-10-26 2019-04-16 Raytheon Company Central emulator device and method for distributed emulation
US10454961B2 (en) * 2016-11-02 2019-10-22 Cujo LLC Extracting encryption metadata and terminating malicious connections using machine learning
US10498862B2 (en) * 2016-12-12 2019-12-03 Sap Se Bi-directional communication for an application object framework
US11233675B2 (en) 2016-12-19 2022-01-25 Arris Enterprises Llc System and method for enabling coexisting hotspot and DMZ
FR3060792B1 (fr) * 2016-12-19 2018-12-07 Safran Electronics & Defense Dispositif de chargement de donnees dans des unites informatiques de traitement depuis une source de donnees
CN113300876B (zh) * 2016-12-26 2022-09-02 华为技术有限公司 Dcn报文处理方法、网络设备和网络系统
RU2633186C1 (ru) * 2016-12-28 2017-10-11 Закрытое акционерное общество "Аладдин Р.Д." Персональное устройство аутентификации и защиты данных
US10454892B2 (en) * 2017-02-21 2019-10-22 Bank Of America Corporation Determining security features for external quantum-level computing processing
US10447472B2 (en) 2017-02-21 2019-10-15 Bank Of America Corporation Block computing for information silo
US10824737B1 (en) * 2017-02-22 2020-11-03 Assa Abloy Ab Protecting data from brute force attack
US10218594B2 (en) * 2017-02-28 2019-02-26 Hall Labs Llc Intermediate-range multi-channel wireless device for variable interference environments with adaptive redundancy and patience indicators
US10812135B2 (en) * 2017-02-28 2020-10-20 Texas Instruments Incorporated Independent sequence processing to facilitate security between nodes in wireless networks
KR102304709B1 (ko) * 2017-03-03 2021-09-23 현대자동차주식회사 V2x 통신 메시지에 대하여 적응적 보안 레벨을 적용하는 방법 및 장치
US10728312B2 (en) * 2017-03-03 2020-07-28 Actifio, Inc. Data center network containers
US10594664B2 (en) 2017-03-13 2020-03-17 At&T Intellectual Property I, L.P. Extracting data from encrypted packet flows
JP2018152691A (ja) * 2017-03-13 2018-09-27 日本電気株式会社 制御装置
JP6472823B2 (ja) * 2017-03-21 2019-02-20 株式会社東芝 信号処理装置、信号処理方法および属性付与装置
US10257077B1 (en) * 2017-03-22 2019-04-09 Amazon Technologies, Inc. Hop-aware multicast in a mesh network
UA125677C2 (uk) * 2017-04-03 2022-05-11 Лістат Лтд. Методи та пристрій гіперзахищеного зв'язку "останньої милі"
US10135706B2 (en) 2017-04-10 2018-11-20 Corning Optical Communications LLC Managing a communications system based on software defined networking (SDN) architecture
US10897457B2 (en) * 2017-04-17 2021-01-19 International Business Machines Corporation Processing of IoT data by intermediaries
KR102318021B1 (ko) * 2017-04-21 2021-10-27 삼성전자 주식회사 이동 통신 네트워크 내 다중 링크 상에서의 패킷 분배 방법 및 장치
US10572322B2 (en) * 2017-04-27 2020-02-25 At&T Intellectual Property I, L.P. Network control plane design tool
WO2018201084A1 (en) 2017-04-28 2018-11-01 Opanga Networks, Inc. System and method for tracking domain names for the purposes of network management
RU2670388C1 (ru) * 2017-05-05 2018-10-22 Общество с ограниченной ответственностью "НПФ Мультиобработка" Способ и устройство для выполнения обновления программного обеспечения в устройстве связи по линиям электропередач
US10750399B2 (en) * 2017-05-08 2020-08-18 Hughes Network Systems, Llc Satellite user terminal gateway for a satellite communication network
US10084825B1 (en) * 2017-05-08 2018-09-25 Fortinet, Inc. Reducing redundant operations performed by members of a cooperative security fabric
US10311421B2 (en) * 2017-06-02 2019-06-04 Bluefin Payment Systems Llc Systems and methods for managing a payment terminal via a web browser
US11711350B2 (en) 2017-06-02 2023-07-25 Bluefin Payment Systems Llc Systems and processes for vaultless tokenization and encryption
WO2018231773A1 (en) 2017-06-12 2018-12-20 Daniel Maurice Lerner Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys
CN109151539B (zh) * 2017-06-16 2021-05-28 武汉斗鱼网络科技有限公司 一种基于unity3d的视频直播方法、系统及设备
CN110832950B (zh) * 2017-07-05 2023-06-23 瑞典爱立信有限公司 操作无线通信设备的方法及相关联的设备和装置
US20190014092A1 (en) * 2017-07-08 2019-01-10 Dan Malek Systems and methods for security in switched networks
CN107330337B (zh) * 2017-07-19 2022-05-24 腾讯科技(深圳)有限公司 混合云的数据存储方法、装置、相关设备及云系统
US10863351B2 (en) * 2017-07-31 2020-12-08 Qualcomm Incorporated Distribution network support
JP2020530159A (ja) 2017-08-02 2020-10-15 ストロング フォース アイオーティ ポートフォリオ 2016,エルエルシー 大量のデータセットを使用する産業用のモノのインターネットのデータ収集環境における検出のための方法及びシステム
US10908602B2 (en) 2017-08-02 2021-02-02 Strong Force Iot Portfolio 2016, Llc Systems and methods for network-sensitive data collection
KR102234451B1 (ko) * 2017-08-15 2021-03-31 구글 엘엘씨 멀티캐스트를 이용한 스트리밍 대역폭의 최적 활용
US10708316B2 (en) * 2017-08-28 2020-07-07 Subspace Inc. Virtual border controller
US10291594B2 (en) * 2017-08-31 2019-05-14 Fmr Llc Systems and methods for data encryption and decryption
US10965456B2 (en) 2017-09-25 2021-03-30 The Boeing Company Systems and methods for facilitating data encryption and decryption and erasing of associated information
US10860403B2 (en) 2017-09-25 2020-12-08 The Boeing Company Systems and methods for facilitating truly random bit generation
US10924263B2 (en) * 2017-09-25 2021-02-16 The Boeing Company Systems and methods for facilitating iterative key generation and data encryption and decryption
US10375019B2 (en) 2017-10-06 2019-08-06 Stealthpath, Inc. Methods for internet communication security
US10397186B2 (en) * 2017-10-06 2019-08-27 Stealthpath, Inc. Methods for internet communication security
US10367811B2 (en) * 2017-10-06 2019-07-30 Stealthpath, Inc. Methods for internet communication security
US10361859B2 (en) 2017-10-06 2019-07-23 Stealthpath, Inc. Methods for internet communication security
US10374803B2 (en) 2017-10-06 2019-08-06 Stealthpath, Inc. Methods for internet communication security
US10630642B2 (en) * 2017-10-06 2020-04-21 Stealthpath, Inc. Methods for internet communication security
US10523404B2 (en) * 2017-10-16 2019-12-31 Huawei Technologies Co., Ltd. Media access control for full duplex communications
US10547632B2 (en) 2017-10-27 2020-01-28 Verizon Patent And Licensing Inc. Brokered communication protocol using information theoretic coding for security
US10666616B2 (en) 2017-10-31 2020-05-26 Ca, Inc. Application identification and control in a network device
US10320643B2 (en) * 2017-11-10 2019-06-11 Netscout Systems, Inc. Cloud computing environment system for automatically determining over-the-top applications and services
US10033709B1 (en) 2017-11-20 2018-07-24 Microsoft Technology Licensing, Llc Method and apparatus for improving privacy of communications through channels having excess capacity
US10866822B2 (en) * 2017-11-28 2020-12-15 Bank Of America Corporation Computer architecture for emulating a synchronous correlithm object processing system
EP3669565A4 (en) 2017-11-30 2021-06-09 Northeastern University SYSTEM FOR OPERATING A DISTRIBUTED WIRELESS NETWORK
CN108040101B (zh) * 2017-12-06 2020-11-03 常熟理工学院 一种可靠的大数据网络实现方法
US11218485B1 (en) * 2017-12-12 2022-01-04 Berryville Holdings, LLC Systems and methods for providing transparent simultaneous access to multiple secure enclaves
CN108123793A (zh) * 2017-12-19 2018-06-05 杭州中天微系统有限公司 基于apb总线的spi通信装置
US11055690B2 (en) 2017-12-21 2021-07-06 Paypal, Inc. Systems and methods employing a router for electronic transactions
CN108092707B (zh) * 2017-12-21 2021-01-26 广东工业大学 一种基于无人机自组网的数据传输方法及装置
CN108111792B (zh) * 2017-12-22 2023-08-29 杭州初灵信息技术股份有限公司 实现lte通讯和卫星视频传输的设备
US11861025B1 (en) * 2018-01-08 2024-01-02 Rankin Labs, Llc System and method for receiving and processing a signal within a TCP/IP protocol stack
US10794989B2 (en) * 2018-01-12 2020-10-06 The Euclide 2012 Investment Trust Method of using a direct sequence spread spectrum in vehicle location approximation when using orthogonal frequency-division multiplexing
CN110120985B (zh) * 2018-02-05 2021-06-29 华为技术有限公司 通信的方法和设备
ES2798127T3 (es) * 2018-02-06 2020-12-09 Deutsche Telekom Ag Técnicas para transmisión de múltiples trayectos eficaz
RU2697953C2 (ru) * 2018-02-06 2019-08-21 Акционерное общество "Лаборатория Касперского" Система и способ вынесения решения о компрометации данных
CN108092830B (zh) * 2018-02-09 2020-01-24 乐鑫信息科技(上海)股份有限公司 在Mesh网络中应用TCP/IP协议的方法
CN110162413B (zh) * 2018-02-12 2021-06-04 华为技术有限公司 事件驱动方法及装置
CN112087734B (zh) * 2018-02-13 2022-01-14 华为技术有限公司 通信方法及装置
WO2019160946A1 (en) * 2018-02-13 2019-08-22 Tadhg Kelly Voip oob services
EP3756316A1 (en) * 2018-02-20 2020-12-30 Hughes Network Systems, LLC Satellite and terrestrial load balancing
CN108334768A (zh) * 2018-03-19 2018-07-27 黄冈职业技术学院 一种计算机系统用户身份验证方法
EP3761571B1 (en) * 2018-03-22 2022-06-22 Huawei Technologies Co., Ltd. Method, device and system for handling message fragmentation
CN110309314B (zh) * 2018-03-23 2021-06-29 中移(苏州)软件技术有限公司 一种血缘关系图的生成方法、装置、电子设备及存储介质
US10831914B2 (en) * 2018-03-26 2020-11-10 Bank Of America Corporation Secure extensible wireless communication with IoT devices
US11349631B2 (en) * 2018-03-26 2022-05-31 Qualcomm Incorporated Techniques for providing full-duplex communications in wireless radio access technologies
JP7095354B2 (ja) * 2018-03-28 2022-07-05 株式会社リコー 情報処理システム、情報処理装置、情報処理方法及びプログラム
US10742674B1 (en) 2018-03-29 2020-08-11 Architecture Technology Corporation Systems and methods for segmented attack prevention in internet of things (IoT) networks
US10841303B2 (en) * 2018-04-12 2020-11-17 Bank Of America Corporation Apparatus and methods for micro-segmentation of an enterprise internet-of-things network
JP2019191931A (ja) * 2018-04-25 2019-10-31 富士通株式会社 情報処理システム、入力値検証支援プログラム、および入力値検証プログラム
US20190334701A1 (en) * 2018-04-25 2019-10-31 EMC IP Holding Company LLC Lightweight security for internet of things messaging
US10911406B2 (en) * 2018-04-30 2021-02-02 Microsoft Technology Licensing, Llc Accessing cloud resources using private network addresses
CN110460544B (zh) 2018-05-08 2021-09-07 华为技术有限公司 一种堆叠中交换机的标识分配方法、光缆及相关设备
CN108737026B (zh) * 2018-05-08 2020-07-03 深圳市心流科技有限公司 数据传输方法、装置及计算机可读存储介质
CN108710925A (zh) * 2018-05-15 2018-10-26 南京博内特信息科技有限公司 一种基于物联网的服装货架系统的方法
TWI683555B (zh) * 2018-06-04 2020-01-21 友訊科技股份有限公司 能整合行動路由器與固接式路由器的網通裝置
CN112534790B (zh) * 2018-06-08 2023-07-04 兰克森控股公司 在通信网络中交换加密数据的加密装置、通信系统和方法
US11218446B2 (en) * 2018-06-15 2022-01-04 Orock Technologies, Inc. Secure on-premise to cloud communication
US20210224403A1 (en) * 2018-06-18 2021-07-22 Koninklijke Philips N.V. Secure remote image analysis based on randomized data transformation
US10817604B1 (en) 2018-06-19 2020-10-27 Architecture Technology Corporation Systems and methods for processing source codes to detect non-malicious faults
US10749890B1 (en) 2018-06-19 2020-08-18 Architecture Technology Corporation Systems and methods for improving the ranking and prioritization of attack-related events
CN110635925B (zh) * 2018-06-21 2022-07-12 武汉亿阳信通科技有限公司 一种网络节点分析系统与分析方法
US11128563B2 (en) 2018-06-22 2021-09-21 Sorenson Ip Holdings, Llc Incoming communication routing
FR3081644A1 (fr) * 2018-06-22 2019-11-29 Orange Procede de decouverte de fonctions intermediaires et de selection d'un chemin entre deux equipements de communication
US11290430B2 (en) 2018-06-25 2022-03-29 Virtual Software Systems, Inc. Systems and methods for securing communications
US11991061B2 (en) * 2018-06-25 2024-05-21 British Telecommunications Public Limited Company Processing local area network diagnostic data
AU2019297029A1 (en) * 2018-07-06 2021-01-07 Rtx A/S Audio data buffering for low latency wireless communication
WO2020014399A1 (en) * 2018-07-10 2020-01-16 Listat Ltd. Decentralized cybersecure privacy network for cloud communication and global e-commerce
US10601589B1 (en) 2018-07-16 2020-03-24 Banuba Limited Computer systems designed for instant message communications with computer-generated imagery communicated over decentralised distributed networks and methods of use thereof
RU2741273C2 (ru) * 2018-07-26 2021-01-22 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации Способ достоверной оценки устойчивости к катастрофам автоматизированных информационных систем
RU2756688C1 (ru) * 2018-07-31 2021-10-04 Ст Инжиниринг Айдирект (Юроп) Си Нв Передатчик спутниковой связи
US10291598B1 (en) * 2018-08-07 2019-05-14 Juniper Networks, Inc. Transmitting and storing different types of encrypted information using TCP urgent mechanism
US11368436B2 (en) * 2018-08-28 2022-06-21 Bae Systems Information And Electronic Systems Integration Inc. Communication protocol
US10951654B2 (en) 2018-08-30 2021-03-16 At&T Intellectual Property 1, L.P. System and method for transmitting a data stream in a network
US11120496B2 (en) 2018-09-06 2021-09-14 Bank Of America Corporation Providing augmented reality user interfaces and controlling back-office data processing systems based on augmented reality events
CN109347540B (zh) * 2018-10-16 2020-07-24 北京邮电大学 一种安全路由的实现方法及装置
US10771405B2 (en) * 2018-10-26 2020-09-08 Cisco Technology, Inc. Switching and load balancing techniques in a communication network
US20210352045A1 (en) * 2018-10-30 2021-11-11 Hewlett Packard Enterprise Development Lp Software defined wide area network uplink selection with a virtual ip address for a cloud service
US11063921B2 (en) * 2018-11-06 2021-07-13 International Business Machines Corporation Extracting data from passively captured web traffic that is encrypted in accordance with an anonymous key agreement protocol
CN109413081B (zh) * 2018-11-12 2021-09-07 郑州昂视信息科技有限公司 一种Web服务调度方法及调度系统
CN109448192A (zh) * 2018-11-13 2019-03-08 公安部第三研究所 基于加密芯片的安全智能锁系统
CN111200798B (zh) * 2018-11-20 2022-04-05 华为技术有限公司 一种v2x消息的传输方法、设备及系统
TWI668590B (zh) * 2018-11-21 2019-08-11 中華電信股份有限公司 憑證有效性驗證系統及其方法
CN109493953B (zh) * 2018-11-26 2023-01-13 中国科学院深圳先进技术研究院 一种医学影像应用信息传输方法、装置、设备及介质
US11593539B2 (en) 2018-11-30 2023-02-28 BlueOwl, LLC Systems and methods for facilitating virtual vehicle operation based on real-world vehicle operation data
US11985112B2 (en) * 2018-12-18 2024-05-14 Bae Systems Information And Electronic Systems Integration Inc. Securing data in motion by zero knowledge protocol
US11489864B2 (en) * 2018-12-20 2022-11-01 Bull Sas Method for detecting denial of service attacks
CN111464881B (zh) * 2019-01-18 2021-08-13 复旦大学 基于自优化机制的全卷积视频描述生成方法
US11429713B1 (en) 2019-01-24 2022-08-30 Architecture Technology Corporation Artificial intelligence modeling for cyber-attack simulation protocols
CN111277949B (zh) * 2019-01-25 2021-05-28 维沃移动通信有限公司 信息上报方法、资源分配方法、第一终端及第二终端
US10853198B2 (en) 2019-01-30 2020-12-01 Bank Of America Corporation System to restore a transformation state using blockchain technology
US10824635B2 (en) * 2019-01-30 2020-11-03 Bank Of America Corporation System for dynamic intelligent code change implementation
US11277450B2 (en) * 2019-02-04 2022-03-15 Verizon Patent And Licensing Inc. Over-the-top client with native calling quality of service
US11128654B1 (en) 2019-02-04 2021-09-21 Architecture Technology Corporation Systems and methods for unified hierarchical cybersecurity
US20200259847A1 (en) * 2019-02-08 2020-08-13 Fortinet, Inc. Providing secure data-replication between a master node and tenant nodes of a multi-tenancy architecture
EP3925214A4 (en) * 2019-02-15 2022-11-23 Nokia Technologies Oy DEVICE, METHOD AND COMPUTER PROGRAM FOR VIDEO ENCODING AND DECODING
US20220303854A1 (en) * 2019-02-18 2022-09-22 Lenovo (Singapore) Pte. Ltd. Calculating round trip time in a mobile communication network
CN109714737B (zh) * 2019-02-21 2021-08-20 江苏大学 一种具有全双工基站蜂窝网络的d2d隐蔽通信系统及其通信方法
EP3700170A1 (en) * 2019-02-21 2020-08-26 INTEL Corporation Device and method for transferring identification and/or data flow control information between devices
CN109889335B (zh) * 2019-02-22 2021-07-09 中国电子科技集团公司第三十研究所 基于随机分流加密传输的新型高安全光链路保密通信方法
WO2020170225A2 (en) * 2019-02-24 2020-08-27 Nili Philipp System and method for securing data
EP3888328B1 (en) * 2019-03-06 2023-05-31 Samsung Electronics Co., Ltd. Method and system for mpquic over qsocks in wireless network
CN110032893B (zh) * 2019-03-12 2021-09-28 创新先进技术有限公司 基于秘密分享的安全模型预测方法和装置
TWI686064B (zh) * 2019-03-14 2020-02-21 就肆電競股份有限公司 點對點網路加速系統
ES2871053T3 (es) * 2019-03-18 2021-10-28 Advanced New Technologies Co Ltd Prevención de la tergiversación de los datos de entrada por parte de los participantes en una computación segura multipartita
US11055256B2 (en) * 2019-04-02 2021-07-06 Intel Corporation Edge component computing system having integrated FaaS call handling capability
KR102388617B1 (ko) * 2019-04-15 2022-04-21 주식회사 가디언이엔지 클라이언트 기반 트래픽 조절 장치 및 방법
CN110381473B (zh) * 2019-04-19 2022-02-11 哈尔滨工业大学(威海) 网络编码辅助d2d通信多中继选择方法
CN110147398B (zh) * 2019-04-25 2020-05-15 北京字节跳动网络技术有限公司 一种数据处理方法、装置、介质和电子设备
WO2020232162A1 (en) 2019-05-13 2020-11-19 Bluefin Payment Systems Llc Systems and processes for vaultless tokenization and encryption
CN110188424B (zh) * 2019-05-16 2021-01-15 浙江大学 一种面向动边界流场数值模拟的局部区域网格重构并行方法
WO2020232549A1 (en) * 2019-05-21 2020-11-26 Genetec Inc. Methods and systems for codec detection in video streams
US20220191162A1 (en) * 2019-05-28 2022-06-16 Telefonaktiebolaget Lm Ericsson (Publ) Network nodes and methods performed therein for handling messages
CN110113363B (zh) * 2019-05-29 2020-09-15 精英数智科技股份有限公司 一种煤矿物联网数据的发布订阅系统
CN110225471A (zh) * 2019-06-06 2019-09-10 浙江省机电设计研究院有限公司 一种应用多条短信数据融合的情报板信息发布方法
US11088952B2 (en) * 2019-06-12 2021-08-10 Juniper Networks, Inc. Network traffic control based on application path
CN110399161B (zh) * 2019-06-14 2023-08-18 五八有限公司 一种映射关系的生成方法、调用方法及装置
US11403405B1 (en) 2019-06-27 2022-08-02 Architecture Technology Corporation Portable vulnerability identification tool for embedded non-IP devices
US10856347B2 (en) 2019-06-28 2020-12-01 Advanced New Technologies Co., Ltd. Wireless communications method, apparatus, device, and storage medium
CN110324334B (zh) * 2019-06-28 2023-04-07 深圳前海微众银行股份有限公司 安全组策略管理方法、装置、设备及计算机可读存储介质
CN110336808B (zh) * 2019-06-28 2021-08-24 南瑞集团有限公司 一种面向电力工控网络的攻击溯源方法及系统
CN110442449A (zh) * 2019-07-09 2019-11-12 北京云和时空科技有限公司 一种资源调度方法和装置
CN110535626B (zh) * 2019-07-16 2023-06-06 如般量子科技有限公司 基于身份的量子通信服务站保密通信方法和系统
RU2747461C2 (ru) * 2019-07-17 2021-05-05 Акционерное общество "Лаборатория Касперского" Система и способ противодействия аномалиям в технологической системе
US11546353B2 (en) 2019-07-18 2023-01-03 Toyota Motor North America, Inc. Detection of malicious activity on CAN bus
US11470050B2 (en) * 2019-07-19 2022-10-11 At&T Intellectual Property I, L.P. Web activity concealment
US11630684B2 (en) 2019-07-26 2023-04-18 Microsoft Technology Licensing, Llc Secure incident investigation workspace generation and investigation control
US11212300B2 (en) 2019-07-26 2021-12-28 Microsoft Technology Licensing, Llc Secure incident investigation event capture
US11153321B2 (en) * 2019-07-26 2021-10-19 Microsoft Technology Licensing, Llc Secure investigations platform
CN112532539B (zh) * 2019-09-18 2023-03-28 无锡江南计算技术研究所 面向大规模并发通信的优化方法
US11429457B2 (en) 2019-09-26 2022-08-30 Dell Products L.P. System and method to securely exchange system diagnostics information between firmware, operating system and payload
US11558423B2 (en) * 2019-09-27 2023-01-17 Stealthpath, Inc. Methods for zero trust security with high quality of service
CN110677298A (zh) * 2019-09-29 2020-01-10 中车青岛四方机车车辆股份有限公司 一种动车组的通信管理方法、装置、设备及介质
TWI736378B (zh) * 2019-10-03 2021-08-11 瑞昱半導體股份有限公司 可動態切換操作模式的多成員藍牙裝置、以及相關的主藍牙電路與副藍牙電路
US11432149B1 (en) 2019-10-10 2022-08-30 Wells Fargo Bank, N.A. Self-sovereign identification via digital credentials for selected identity attributes
US10896664B1 (en) * 2019-10-14 2021-01-19 International Business Machines Corporation Providing adversarial protection of speech in audio signals
US11444974B1 (en) 2019-10-23 2022-09-13 Architecture Technology Corporation Systems and methods for cyber-physical threat modeling
US11228607B2 (en) 2019-11-09 2022-01-18 International Business Machines Corporation Graceful termination of security-violation client connections in a network protection system (NPS)
CN112866308B (zh) * 2019-11-12 2023-03-10 华为技术有限公司 一种数据重组的方法以及装置
JP7332890B2 (ja) * 2019-11-19 2023-08-24 アイコム株式会社 音声通信システム、音声通信方法、および、音声通信プログラム
US10904038B1 (en) 2019-11-21 2021-01-26 Verizon Patent And Licensing Inc. Micro-adapter architecture for cloud native gateway device
RU2727932C1 (ru) * 2019-12-04 2020-07-27 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система выявления вредоносных файлов с помощью генерирования объявлений на торговых онлайн платформах
US11303608B2 (en) * 2019-12-13 2022-04-12 Toshiba Global Commerce Solutions Holdings Corporation Dynamic pinpad IP address assignment in point of sale environments
CN110944010B (zh) * 2019-12-13 2021-09-14 辽宁省计量科学研究院 一种防窃取的流量装置控制系统及方法
CN111131020A (zh) * 2019-12-13 2020-05-08 北京博大光通物联科技股份有限公司 通信管理方法和系统
CN111065076B (zh) * 2019-12-25 2021-04-20 郭晋华 一种应用于新一代信息技术基于信号强度阈值的m2m物联网改进通信方法、设备和系统
CN111163360B (zh) * 2020-01-02 2021-11-16 腾讯科技(深圳)有限公司 视频处理方法、装置、计算机可读存储介质和计算机设备
US11503075B1 (en) 2020-01-14 2022-11-15 Architecture Technology Corporation Systems and methods for continuous compliance of nodes
WO2021150498A1 (en) 2020-01-20 2021-07-29 BlueOwl, LLC Systems and methods for training and applying virtual occurrences and granting in-game resources to a virtual character using telematics data of one or more real trips
US11537691B2 (en) * 2020-02-28 2022-12-27 Infineon Technologies Ag Controller area network traffic flow confidentiality
CN111431704A (zh) * 2020-03-03 2020-07-17 百度在线网络技术(北京)有限公司 用于生成、解析口令的方法和装置
TWI743715B (zh) * 2020-03-24 2021-10-21 瑞昱半導體股份有限公司 用來針對非揮發性記憶體進行資訊保護的方法及設備
CN111478951B (zh) * 2020-03-26 2023-08-08 深圳市鸿合创新信息技术有限责任公司 一种文件下发方法和装置
US11063992B1 (en) * 2020-03-30 2021-07-13 Tencent America LLC Network-based media processing (NBMP) workflow management through 5G framework for live uplink streaming (FLUS) control
CN111599168B (zh) * 2020-04-01 2021-12-21 广东中科臻恒信息技术有限公司 基于路侧单元的道路交通信息采集方法、设备、存储介质
US11824881B2 (en) 2020-04-15 2023-11-21 T-Mobile Usa, Inc. On-demand security layer for a 5G wireless network
US11799878B2 (en) * 2020-04-15 2023-10-24 T-Mobile Usa, Inc. On-demand software-defined security service orchestration for a 5G wireless network
US11469882B2 (en) * 2020-04-17 2022-10-11 Rockwell Collins, Inc. Optimized convolution for received XOR encrypted data streams
US20210334279A1 (en) * 2020-04-26 2021-10-28 Anupam Jaiswal On-demand data ingestion system and method
CN111615151B (zh) * 2020-04-26 2023-10-10 北京瀚诺半导体科技有限公司 一种上线信道筛选方法及装置
US11057774B1 (en) 2020-05-14 2021-07-06 T-Mobile Usa, Inc. Intelligent GNODEB cybersecurity protection system
CN111654856A (zh) * 2020-06-09 2020-09-11 辽宁铁道职业技术学院 一种移动通信的双通道加密系统
CN111835499A (zh) * 2020-06-30 2020-10-27 中国电子科技集团公司第三十研究所 一种基于高性能计算的l2tp/ipsec破解方法及系统
CN111915474B (zh) * 2020-07-08 2023-10-10 绍兴聚量数据技术有限公司 基于整数变换的可逆加密域信息隐藏方法
CN117768127A (zh) * 2020-07-13 2024-03-26 易盼红 一种基于大数据的用户终端信息控制系统
TWI775112B (zh) * 2020-07-15 2022-08-21 塞席爾商阿普科爾公司 暫存器存取的方法及系統
WO2022017577A1 (en) * 2020-07-20 2022-01-27 Nokia Technologies Oy Apparatus, method, and computer program
CN111835791B (zh) * 2020-07-30 2022-10-28 哈尔滨工业大学 一种bgp安全事件快速检测系统
CN111741351B (zh) * 2020-08-03 2021-08-24 腾讯科技(深圳)有限公司 一种视频数据处理方法、装置及存储介质
WO2022031624A1 (en) * 2020-08-03 2022-02-10 Ntt Research Inc. Quantum traitor tracing of pirate decoders
RU2745031C1 (ru) * 2020-08-10 2021-03-18 Акционерное общество "Проектно-конструкторское бюро "РИО" Способ моделирования процессов функционирования сети связи с учетом воздействия дестабилизирующих факторов
US11716192B2 (en) * 2020-08-24 2023-08-01 Gideon Samid Replica: an improved communication concealment cipher
CN111970291B (zh) * 2020-08-24 2023-06-02 成都天奥信息科技有限公司 语音通信交换系统及甚高频地空模拟电台分布式组网方法
CN112104615B (zh) * 2020-08-24 2021-07-20 清华大学 基于IPv6地址的文件可信判断的处理方法及装置
CN114124925B (zh) * 2020-08-25 2023-05-12 华为技术有限公司 一种电子邮件的同步方法及电子设备
CN112203278A (zh) * 2020-09-11 2021-01-08 谢志全 一种5g信号的秘钥复合硬件加密的方法及装置
WO2022066568A1 (en) * 2020-09-24 2022-03-31 Arris Enterprises Llc Personalized data throttling in a residential wireless network
KR102421722B1 (ko) * 2020-09-28 2022-07-15 성신여자대학교 연구 산학협력단 네트워크 정보 보호 방법 및 장치
US11606694B2 (en) 2020-10-08 2023-03-14 Surendra Goel System that provides cybersecurity in a home or office by interacting with internet of things devices and other devices
CN112422892B (zh) * 2020-10-14 2022-08-02 重庆恢恢信息技术有限公司 一种通过物联网海量建筑数据进行图像处理的工作方法
CN112242186B (zh) * 2020-10-20 2021-04-06 山东省千佛山医院 一种血液检测结果输出定制化系统
DE102020128285A1 (de) * 2020-10-28 2022-04-28 Audi Aktiengesellschaft Verfahren zum Überwachen eines Datenverkehrs zwischen Steuergeräten eines Kraftfahrzeugs sowie entsprechend ausgestattetes Kraftfahrzeug
JP7395455B2 (ja) * 2020-11-06 2023-12-11 株式会社東芝 転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラム
JP2022075196A (ja) * 2020-11-06 2022-05-18 株式会社東芝 転送装置、鍵管理サーバ装置、通信システム、転送方法及びプログラム
US11564063B2 (en) 2020-11-11 2023-01-24 International Business Machines Corporation Intelligent dynamic communication handoff for mobile applications
CN112364781B (zh) * 2020-11-13 2024-04-05 珠海雷特科技股份有限公司 智能灯具及其信号自适应识别方法、计算机可读存储介质
CN112333197B (zh) * 2020-11-16 2022-11-29 展讯通信(上海)有限公司 数据传输方法及系统、用户设备及存储介质
WO2022109664A1 (en) * 2020-11-24 2022-06-02 Martinic Christopher Ransomware mitigation system and method for mitigating a ransomware attack
CN112469080B (zh) * 2020-11-27 2022-08-02 紫光展锐(重庆)科技有限公司 一种数据包处理的方法及相关装置
CN112738239B (zh) * 2020-12-29 2023-03-31 杭州趣链科技有限公司 基于区块链的跨网安全数据共享方法及其系统
US11683334B2 (en) * 2020-12-30 2023-06-20 T-Mobile Usa, Inc. Cybersecurity system for services of interworking wireless telecommunications networks
US11412386B2 (en) * 2020-12-30 2022-08-09 T-Mobile Usa, Inc. Cybersecurity system for inbound roaming in a wireless telecommunications network
US11641585B2 (en) 2020-12-30 2023-05-02 T-Mobile Usa, Inc. Cybersecurity system for outbound roaming in a wireless telecommunications network
CN112752286B (zh) * 2020-12-31 2023-04-25 网络通信与安全紫金山实验室 卫星网络集中式组网方法、装置、设备及存储介质
CN112333210B (zh) * 2021-01-04 2022-03-29 视联动力信息技术股份有限公司 一种视联网数据通信功能实现方法和设备
CN112803988B (zh) * 2021-01-25 2022-08-02 哈尔滨工程大学 基于链路误码率预测的混合接触图路由方法
TWI797554B (zh) * 2021-02-05 2023-04-01 新唐科技股份有限公司 系統單晶片及控制方法
TWI764587B (zh) * 2021-02-23 2022-05-11 大陸商北京集創北方科技股份有限公司 Hdmi協定的通用驗證系統及方法
US11283768B1 (en) * 2021-03-02 2022-03-22 NortonLifeLock Inc. Systems and methods for managing connections
CN113050440B (zh) * 2021-03-09 2023-09-22 全岚 一种智能家居控制方法与系统
CN113010506B (zh) * 2021-03-11 2023-08-29 江苏省生态环境监控中心(江苏省环境信息中心) 一种多源异构水环境大数据管理系统
TWI774289B (zh) * 2021-03-25 2022-08-11 瑞昱半導體股份有限公司 音訊混合裝置以及音訊混合方法
US11363048B1 (en) 2021-03-25 2022-06-14 Bank Of America Corporation Information security system and method for security threat detection in data transmission
TWI780655B (zh) * 2021-04-13 2022-10-11 碩壹資訊股份有限公司 能分隔應用程式程序之資料處理系統及資料處理方法
CN112995357B (zh) * 2021-04-21 2021-07-23 腾讯科技(深圳)有限公司 基于云托管服务的域名管理方法、装置、介质及电子设备
CN113132993B (zh) * 2021-04-23 2023-03-24 杭州网银互联科技股份有限公司 应用在无线局域网中的数据窃取识别系统及其使用方法
RU2765810C1 (ru) * 2021-04-28 2022-02-03 Федеральное государственное бюджетное образовательное учреждение высшего образования "Владивостокский государственный университет экономики и сервиса" (ВГУЭС) Способ многомерной динамической маршрутизации в сети связи с пакетной передачей сообщений
US20220357737A1 (en) * 2021-05-06 2022-11-10 Martez Antonio Easter Secured Network Intellingence That Contacts Help
US11711689B2 (en) * 2021-05-26 2023-07-25 Google Llc Secure localized connectionless handoffs of data
CN113420495B (zh) * 2021-05-31 2023-02-03 西南电子技术研究所(中国电子科技集团公司第十研究所) 主动诱骗式智能抗干扰方法
CN113413586B (zh) * 2021-06-23 2023-09-15 腾讯科技(上海)有限公司 一种虚拟对象传送方法、装置、设备及存储介质
US20220414234A1 (en) * 2021-06-23 2022-12-29 Palantir Technologies Inc. Approaches of performing data processing while maintaining security of encrypted data
CN113573336B (zh) * 2021-07-12 2023-07-14 中国联合网络通信集团有限公司 通信管控方法及设备
TWI789852B (zh) * 2021-07-29 2023-01-11 財團法人車輛研究測試中心 車用複合式通訊系統與方法
US11504622B1 (en) 2021-08-17 2022-11-22 BlueOwl, LLC Systems and methods for generating virtual encounters in virtual games
US11969653B2 (en) 2021-08-17 2024-04-30 BlueOwl, LLC Systems and methods for generating virtual characters for a virtual game
US11896903B2 (en) 2021-08-17 2024-02-13 BlueOwl, LLC Systems and methods for generating virtual experiences for a virtual game
US11697069B1 (en) 2021-08-17 2023-07-11 BlueOwl, LLC Systems and methods for presenting shared in-game objectives in virtual games
TWI789889B (zh) * 2021-08-30 2023-01-11 和碩聯合科技股份有限公司 聲音隔離度測試系統及聲音隔離度測試方法
US20230115064A1 (en) * 2021-09-30 2023-04-13 Dell Products L.P. Securing data transmissions using split messages
JP2023057813A (ja) 2021-10-12 2023-04-24 株式会社リコー 情報処理装置、情報処理システム、情報処理方法、及びプログラム
CN114124464B (zh) * 2021-10-27 2023-08-08 中盈优创资讯科技有限公司 一种被劫持路由的自动解封方法及装置
US11805079B2 (en) * 2021-11-17 2023-10-31 Charter Communications Operating, Llc Methods and apparatus for coordinating data transmission in a communications network
US11818141B2 (en) * 2021-12-09 2023-11-14 Cisco Technology, Inc. Path validation checks for proof of security
CN114013429A (zh) * 2021-12-23 2022-02-08 东风悦享科技有限公司 一种一体式自动驾驶车辆控制系统
TWI816277B (zh) * 2022-01-07 2023-09-21 矽響先創科技股份有限公司 智能雜訊消減裝置及其方法
TWI801085B (zh) * 2022-01-07 2023-05-01 矽響先創科技股份有限公司 智能網路通訊之雜訊消減方法
CN114553745A (zh) * 2022-01-21 2022-05-27 浙江航芯科技有限公司 一种家长控制装置及方法
CN114629679B (zh) * 2022-01-26 2024-02-13 深圳市风云实业有限公司 一种数据报文染色与检测方法及装置
CN114331732B (zh) * 2022-03-15 2022-05-24 北京微芯感知科技有限公司 一种共识报文压缩方法
CN114726518B (zh) * 2022-03-31 2023-05-26 阿里云计算有限公司 用于云网络系统的通信方法、装置、系统及存储介质
WO2023230258A2 (en) * 2022-05-25 2023-11-30 C3N Technologies, Inc. Identity service and blockchain
CN114944960B (zh) * 2022-06-20 2023-07-25 成都卫士通信息产业股份有限公司 一种密码应用方法、装置、设备及存储介质
CN115204628B (zh) * 2022-06-24 2023-04-07 上海交通大学 基于成像资源自适性调节的卫星最小量元任务规划方法
US11886325B2 (en) * 2022-06-30 2024-01-30 Browserstack Limited Network status simulation for remote device infrastructure
US11652729B1 (en) * 2022-07-19 2023-05-16 Uab 360 It Enabling efficient communications in a mesh network
CN115225409B (zh) * 2022-08-31 2022-12-06 成都泛联智存科技有限公司 基于多备份联合验证的云数据安全去重方法
CN115396900A (zh) * 2022-09-02 2022-11-25 南京信息工程大学 一种基于大数据的电信预警监测系统
CN115167969B (zh) * 2022-09-07 2022-12-23 平安银行股份有限公司 基于云端的远程协同方法及装置
US20240095731A1 (en) * 2022-09-21 2024-03-21 Community Gaming, Inc. Blockchain distribution of tournament rewards
US11924095B1 (en) * 2022-12-29 2024-03-05 Code-X, Inc. Utilizing network routing to communicate covert message
CN115834250B (zh) * 2023-02-14 2023-05-09 湖南半岛医疗科技有限公司 一种用于医疗设备内部的加密通讯方法
CN116170229B (zh) * 2023-03-15 2023-10-03 广东英大信息技术有限公司 网络安全检测方法、装置、服务器及计算机可读存储介质
CN116781234B (zh) * 2023-05-04 2024-02-02 深圳市海德盈富信息技术策划有限公司 基于伪随机乱序加密的财务数据共享方法及装置
CN116980890B (zh) * 2023-09-20 2023-12-22 北京集度科技有限公司 信息安全通信装置、方法、车辆、计算机程序产品
CN117062061B (zh) * 2023-10-11 2024-01-12 浙江卡巴尔电气有限公司 一种无线通讯的加密传输方法
KR102662151B1 (ko) * 2023-10-23 2024-04-30 (주) 시스메이트 통신 핑거프린트 제어 기반 비밀정보를 송수신 하는 무선 통신 시스템 및 비밀정보 송수신 방법
CN117372166B (zh) * 2023-10-26 2024-03-08 北京开科唯识技术股份有限公司 一种高效的尾差分配处理方法、装置及存储介质
US11991281B1 (en) * 2023-10-31 2024-05-21 Massood Kamalpour Systems and methods for digital data management including creation of storage location with storage access id

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040160903A1 (en) * 2003-02-13 2004-08-19 Andiamo Systems, Inc. Security groups for VLANs
US20090169001A1 (en) * 2007-12-28 2009-07-02 Cisco Technology, Inc. System and Method for Encryption and Secure Transmission of Compressed Media
US20120216034A1 (en) * 2011-02-23 2012-08-23 Xuemin Chen Method and system for securing communication on a home gateway in an ip content streaming system

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL100238A (en) * 1991-12-04 1995-01-24 Labaton Isaac J Device and method for credit accounts charging
US5321748A (en) 1992-07-02 1994-06-14 General Instrument Corporation, Jerrold Communications Method and apparatus for television signal scrambling using block shuffling
US7457415B2 (en) 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
US6763025B2 (en) * 2001-03-12 2004-07-13 Advent Networks, Inc. Time division multiplexing over broadband modulation method and apparatus
JP3874628B2 (ja) 2001-05-17 2007-01-31 富士通株式会社 パケット転送装置、半導体装置
JP2003032243A (ja) * 2001-07-11 2003-01-31 Yokohama Rubber Co Ltd:The 動的暗号鍵の生成方法並びに暗号化通信方法及びその装置並びに暗号化通信プログラム及びその記録媒体
US7069438B2 (en) * 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
GB2393609A (en) * 2002-09-24 2004-03-31 Orange Personal Comm Serv Ltd Macro-mobility in a mobile radio communication unit using packet data protocols and tunnelling
JP3773194B2 (ja) 2002-09-30 2006-05-10 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信監視システム及びその方法、情報処理方法並びにプログラム
JP2004180318A (ja) * 2002-11-26 2004-06-24 Matsushita Electric Ind Co Ltd データの暗号化又は解読方法及びデータの暗号化又は解読装置
US20060285686A1 (en) * 2002-12-20 2006-12-21 Koninklijke Philips Electronics N.V. Apparatus and method for processing streams
CN100477931C (zh) * 2003-03-28 2009-04-15 郡是株式会社 细针距圆形针织机和使用细针距圆形针织机的针织方法
KR20060060014A (ko) * 2003-08-13 2006-06-02 톰슨 라이센싱 채널-변경 시간을 감소시키기 위한 디스크램블링 데이터의사전-처리
KR20050077652A (ko) 2004-01-30 2005-08-03 삼성전자주식회사 음성/데이터 통합 교환 시스템
WO2005091549A1 (en) * 2004-03-18 2005-09-29 Qualcomm Incorporated Efficient transmission of cryptographic information in secure real time protocol
CN100364332C (zh) * 2004-09-01 2008-01-23 华为技术有限公司 一种保护宽带视音频广播内容的方法
CN1992599A (zh) * 2005-12-30 2007-07-04 英业达股份有限公司 数据接收系统及方法
EP1933519A1 (en) 2006-12-12 2008-06-18 Koninklijke KPN N.V. Streaming media service for mobile telephones
CN101335740B (zh) * 2007-06-26 2012-10-03 华为技术有限公司 发送、接收数据的方法和系统
JP2009039480A (ja) * 2007-08-07 2009-02-26 Kazuko Kikuchi 膝掛け一体型カイロポケット付きロングクッション
US8848913B2 (en) 2007-10-04 2014-09-30 Qualcomm Incorporated Scrambling sequence generation in a communication system
JP2009239480A (ja) * 2008-03-26 2009-10-15 Toshiba Corp 映像受信クライアント、映像配信サーバ、受信アルゴリズム切替制御方法及びプログラム
CN101616072A (zh) * 2008-06-26 2009-12-30 鸿富锦精密工业(深圳)有限公司 网络地址转换装置及其封包处理方法
US8886714B2 (en) 2011-08-08 2014-11-11 Ctera Networks Ltd. Remote access service for cloud-enabled network devices
US8204217B2 (en) 2009-01-28 2012-06-19 Telefonaktiebolaget Lm Ericsson (Publ) Lightweight streaming protection by sequence number scrambling
US8233481B2 (en) 2009-07-27 2012-07-31 Cisco Technology, Inc. Access class based picocell policy enforcement
EP2334070A1 (en) * 2009-12-11 2011-06-15 Irdeto Access B.V. Generating a scrambled data stream
US9014369B2 (en) * 2010-02-11 2015-04-21 International Business Machines Corporation Voice-over internet protocol (VoIP) scrambling mechanism
US9628579B2 (en) * 2010-05-13 2017-04-18 Futurewei Technologies, Inc. System, apparatus for content delivery for internet traffic and methods thereof
JP5476261B2 (ja) 2010-09-14 2014-04-23 株式会社日立製作所 マルチテナント型情報処理システム、管理サーバ及び構成管理方法
IL210169A0 (en) 2010-12-22 2011-03-31 Yehuda Binder System and method for routing-based internet security
US8843693B2 (en) * 2011-05-17 2014-09-23 SanDisk Technologies, Inc. Non-volatile memory and method with improved data scrambling
WO2014065873A1 (en) * 2012-10-22 2014-05-01 Jeff Willey Control messaging in multislot link layer flit
CN103024476B (zh) * 2013-01-08 2018-08-03 北京视博数字电视科技有限公司 数字电视网关设备及内容安全保护的方法
CN103490889B (zh) * 2013-08-07 2017-03-15 金子光 一种无限长密钥互联网通信加密方法
CN103747279A (zh) * 2013-11-18 2014-04-23 南京邮电大学 一种云存储共享编码视频加密与访问控制策略更新方法
CN103997664B (zh) * 2014-05-07 2018-05-01 深圳市九洲电器有限公司 一种音视频流的解扰方法及系统
CN104202361A (zh) * 2014-08-13 2014-12-10 南京邮电大学 基于移动主体的云端数据保护方法
US9998434B2 (en) * 2015-01-26 2018-06-12 Listat Ltd. Secure dynamic communication network and protocol

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040160903A1 (en) * 2003-02-13 2004-08-19 Andiamo Systems, Inc. Security groups for VLANs
US20090169001A1 (en) * 2007-12-28 2009-07-02 Cisco Technology, Inc. System and Method for Encryption and Secure Transmission of Compressed Media
US20120216034A1 (en) * 2011-02-23 2012-08-23 Xuemin Chen Method and system for securing communication on a home gateway in an ip content streaming system

Also Published As

Publication number Publication date
RU2769216C2 (ru) 2022-03-29
RU2019102706A3 (ko) 2022-01-24
SG10201913635QA (en) 2020-03-30
WO2016190912A8 (en) 2017-09-14
KR20240058989A (ko) 2024-05-07
UA123445C2 (uk) 2021-04-07
CN107750441B (zh) 2022-09-13
US10491575B2 (en) 2019-11-26
AU2016266557A1 (en) 2017-09-07
CN111740951A (zh) 2020-10-02
JP6741675B2 (ja) 2020-08-19
JP2018512099A (ja) 2018-05-10
SG11201706093TA (en) 2017-08-30
TW201701605A (zh) 2017-01-01
RU2019102706A (ru) 2019-03-04
CN111740951B (zh) 2023-03-07
AU2016266557A8 (en) 2019-08-08
WO2016190912A1 (en) 2016-12-01
JP2020195141A (ja) 2020-12-03
AU2016266557B2 (en) 2020-07-02
CN111800375A (zh) 2020-10-20
EP3251293A1 (en) 2017-12-06
RU2017130148A (ru) 2019-02-28
KR20170140157A (ko) 2017-12-20
US9998434B2 (en) 2018-06-12
TWI661691B (zh) 2019-06-01
IL253679B (en) 2020-04-30
KR102661985B1 (ko) 2024-04-29
EP3251293A4 (en) 2018-07-11
IL253679A0 (en) 2017-09-28
RU2707715C2 (ru) 2019-11-28
US20180241727A1 (en) 2018-08-23
BR112017016047A8 (pt) 2024-02-27
US20160219024A1 (en) 2016-07-28
RU2017130148A3 (ko) 2019-06-11
CN107750441A (zh) 2018-03-02
EP3251293B1 (en) 2022-07-06
JP7042875B2 (ja) 2022-03-28
KR20230074631A (ko) 2023-05-30
SG10201909329TA (en) 2019-11-28
BR112017016047A2 (pt) 2019-10-01
CA2975105C (en) 2021-09-07
CA2975105A1 (en) 2016-12-01

Similar Documents

Publication Publication Date Title
JP7042875B2 (ja) セキュア動的通信ネットワーク及びプロトコル
AU2021258074B2 (en) Methods and apparatus for hypersecure last mile communication
US20230254944A1 (en) Methods And Apparatus For HyperSecure Last Mile Communication

Legal Events

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