Nothing Special   »   [go: up one dir, main page]

BR112018077485B1 - METHOD PERFORMED BY A CLIENT-SIDE NETWORK CONNECTION POINT, AND CLIENT-SIDE NETWORK CONNECTION POINT - Google Patents

METHOD PERFORMED BY A CLIENT-SIDE NETWORK CONNECTION POINT, AND CLIENT-SIDE NETWORK CONNECTION POINT Download PDF

Info

Publication number
BR112018077485B1
BR112018077485B1 BR112018077485-5A BR112018077485A BR112018077485B1 BR 112018077485 B1 BR112018077485 B1 BR 112018077485B1 BR 112018077485 A BR112018077485 A BR 112018077485A BR 112018077485 B1 BR112018077485 B1 BR 112018077485B1
Authority
BR
Brazil
Prior art keywords
request
prid
http
fqdn
cnap
Prior art date
Application number
BR112018077485-5A
Other languages
Portuguese (pt)
Other versions
BR112018077485A2 (en
Inventor
Sebastian Robitzsch
Dirk Trossen
Original Assignee
Interdigital Patent Holdings, Inc
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 Interdigital Patent Holdings, Inc filed Critical Interdigital Patent Holdings, Inc
Priority claimed from PCT/US2017/040432 external-priority patent/WO2018006042A1/en
Publication of BR112018077485A2 publication Critical patent/BR112018077485A2/en
Publication of BR112018077485B1 publication Critical patent/BR112018077485B1/en

Links

Abstract

Trata-se do emprego de identificadores de regra de proxy para assegurar a integridade do conteúdo entregue em um sistema de HTTP através de ICN. Um método exemplificador é executado por um ponto de conexão de rede de lado de cliente (cNAP) em uma rede centrada em informações (ICN). O cNAP recebe uma solicitação de HTTP que inclui um identificador de recurso e pelo menos um campo de cabeçalho. O cNAP gera um identificador de regra de proxy (PRID) com base no campo (ou campos) de cabeçalho e um identificador de conteúdo (CID) com base no identificador de recurso. O PRID pode ser gerado pela aplicação de uma função hash a uma cadeia de caracteres que inclui dados de campo de cabeçalho. O cNAP envia uma mensagem de ICN de saída que inclui o CID e o PRID. Em resposta, o cNAP recebe uma mensagem de ICN de entrada que inclui uma resposta de HTTP, um PRID e um CID. O cNAP direciona a resposta de HTTP para o cliente (ou clientes) adequados com base no PRID e no CID.This involves the use of proxy rule identifiers to ensure the integrity of content delivered to an HTTP system through ICN. An exemplary method is performed by a client-side network connection point (cNAP) in an information-centric network (ICN). cNAP receives an HTTP request that includes a resource identifier and at least one header field. cNAP generates a proxy rule identifier (PRID) based on the header field (or fields) and a content identifier (CID) based on the resource identifier. The PRID can be generated by applying a hash function to a string that includes header field data. cNAP sends an outbound ICN message that includes the CID and PRID. In response, cNAP receives an inbound ICN message that includes an HTTP response, a PRID, and a CID. cNAP directs the HTTP response to the appropriate client (or clients) based on the PRID and CID.

Description

REFERÊNCIA CRUZADA A PEDIDOS DE DEPÓSITO CORRELATOSCROSS REFERENCE TO RELATED DEPOSIT ORDERS

[001] O presente pedido é um depósito não provisório de e reivindica o benefício disposto no título 35 do USC §119(e) do pedido de patente provisório US n° de série 62/357.868, intitulado "ENABLING HTTP CONTENT INTEGRITY FOR CO-INCIDENTAL MULTICAST DELIVERY IN SURROGATE-ENABLED INFORMATION-CENTRIC NETWORKS", depositado em 1 de julho de 2016, cuja totalidade está aqui incorporada por referência.[001] The present application is a non-provisional filing of and claims the benefit set forth in title 35 of USC §119(e) of US provisional patent application serial no. 62/357,868, entitled "ENABLING HTTP CONTENT INTEGRITY FOR CO- INCIDENTAL MULTICAST DELIVERY IN SURROGATE-ENABLED INFORMATION-CENTRIC NETWORKS", filed on July 1, 2016, the entirety of which is incorporated herein by reference.

ANTECEDENTESBACKGROUND

[002] A rede centrada em informações (ICN, de "Information Centric Networking") constitui um novo paradigma em que o conteúdo é trocado por meio de endereçamento de informações, enquanto se conecta entidades em rede apropriadas que são adequadas para atuar como uma fonte de informações em direção à entidade em rede que solicitou o conteúdo.[002] Information Centric Networking (ICN) constitutes a new paradigm in which content is exchanged through information addressing, while connecting appropriate networked entities that are suitable to act as a source of information towards the networked entity that requested the content.

[003] Arquiteturas inovadoras foram propostas nesse espaço, exigindo a substituição parcial da infraestrutura de rede atual para realizar as funções de nível de rede desejadas dessas soluções. Os cenários de migração preveem que as novas arquiteturas propostas podem ser realizadas como uma sobreposição em relação às arquiteturas existentes, por exemplo, baseadas em IP ou Ethernet local. Essa migração, no entanto, exigiria ainda a transição do equipamento de usuário (UE, de "user equipment") para uma solução baseada em ICN. Com aplicações baseadas em IP que fornecem uma ampla variedade de serviços de internet em uso atualmente, a transição de todas essas aplicações pode ser facilmente vista como uma tarefa muito mais difícil do que a mera transição da funcionalidade de nível de rede, por exemplo, implementação de pilha de protocolos, no UE, uma vez que também exige a transição dos componentes do lado do servidor, por exemplo, servidores da web de comércio eletrônico e similares. Assim, pode-se presumir que os serviços baseados em IP, e com eles os UEs puramente baseados em IP, continuarão a existir durante algum tempo.[003] Innovative architectures have been proposed in this space, requiring partial replacement of current network infrastructure to realize the desired network-level functions of these solutions. The migration scenarios envisage that the new proposed architectures can be realized as an overlay on existing architectures, for example, based on local IP or Ethernet. This migration, however, would still require transitioning the user equipment (UE) to an ICN-based solution. With IP-based applications providing a wide variety of internet services in use today, transitioning all of these applications can easily be seen as a much more difficult task than simply transitioning network-level functionality, e.g. of protocol stack, in the UE, as it also requires the transition of server-side components, for example, e-commerce web servers and the like. Therefore, it can be assumed that IP-based services, and with them purely IP-based UEs, will continue to exist for some time.

[004] A transição para ICN no nível de rede, por outro lado, promete muitos benefícios, como maior eficiência através do uso de caches em rede e do desacoplamento espacial/temporal do remetente/receptor, em geral, a utilização de atualizações SDN para melhor gerenciamento de fluxo, etc.[004] The transition to ICN at the network level, on the other hand, promises many benefits, such as greater efficiency through the use of network caches and spatial/temporal decoupling of the sender/receiver, in general, the use of SDN updates to better flow management, etc.

[005] A revelação "Methods and Systems for Anchoring Hypertext Transfer Protocol (HTTP) Level Services in an Information Centric Network (ICN)", apresentada no documento WO2016123516A1, aqui incorporado por referência em sua totalidade, descreve sistemas e métodos para fornecer serviços de nível HTTP sobre uma rede ICN, o mapeamento dos métodos de solicitação e resposta de HTTP em pacotes ICN adequados, publicados para nomes de ICN adequados. O dito mapeamento é realizado no ponto de conexão de rede (NAP, de "Network Attachment Point") do cliente e do servidor, respectivamente, bem como na GW de borda de ICN para casos de métodos de HTTP que são enviados para e a partir de redes de peering. Com esses métodos, uma porção crescente do serviço atual baseado na internet pode ser mapeada em arquiteturas ICN.[005] The disclosure "Methods and Systems for Anchoring Hypertext Transfer Protocol (HTTP) Level Services in an Information Centric Network (ICN)", presented in document WO2016123516A1, incorporated herein by reference in its entirety, describes systems and methods for providing data transfer services. HTTP level over an ICN network, the mapping of HTTP request and response methods into suitable ICN packets, published to suitable ICN names. Said mapping is performed at the Network Attachment Point (NAP) of the client and server, respectively, as well as at the ICN edge GW for cases of HTTP methods that are sent to and from of peering networks. With these methods, a growing portion of today's Internet-based service can be mapped onto ICN architectures.

[006] A revelação "Elastic Service Provisioning via HTTP-level Surrogate Management", apresentada no pedido provisório de patente US número de série 62/309.610, depositado em 17 de março de 2016, aqui incorporado por referência a título de referência, revela um substituto de HTTP que se refere a pontos de extremidade de serviço a nível de HTTP que atua em nome e com a autoridade de um servidor de origem. Em RFC 3040, "Internet Web Replication & Caching Taxonomy", de janeiro de 2001, um substituto é uma porta de comunicação colocalizada com um servidor de origem, ou em um ponto diferente da rede, à qual é delegada a autoridade para operar em nome de, e tipicamente trabalhando em estreita cooperação com, um ou mais servidores de origem. Os dispositivos comumente conhecidos como "proxies reversos" e "aceleradores de servidor (de origem)" são ambos considerados mais adequados como substitutos. Os substitutos podem ser implantados perto do servidor de origem, perto da localidade ou por toda a rede - uma configuração semelhante à de uma rede de fornecimento de conteúdo (CDN, de "Content Delivery Network"). Colocando-se os servidores substitutos em locais de rede distribuída, o serviço pode possivelmente ser acessado com uma trajetória muito mais curta e maior largura de banda acessível sem a necessidade de entrar em contato com o serviço em seus servidores de origem. Além de todos os benefícios do acesso ao conteúdo direto local, os substitutos atuam em nome do servidor de origem (e, portanto, do proprietário do conteúdo) e oferecem aos proprietários de conteúdo maior controle sobre seu comportamento do que os proxies normais, por exemplo, caches de borda ou CDNs tradicionais. Como resultado, eles oferecem maior potencial para melhorar o desempenho, descarregando a carga de processamento/rede do servidor de origem com experiências de usuário transparentes. Os substitutos funcionam de forma similar aos servidores espelho no sentido de que uma cópia totalmente qualificada de todo o site é armazenada; no entanto, espera-se que o usuário seja capaz de acessar um serviço substituto usando o mesmo FQDN/URL em vez de ser redirecionado para FQDN/URL diferentes conforme os servidores espelho são implementados. Ao contrário dos intermediários de HTTP padrão, os substitutos oferecem um controle mais refinado pelo servidor de origem e pelo proprietário do conteúdo devido à sua relação implícita.[006] The disclosure "Elastic Service Provisioning via HTTP-level Surrogate Management", presented in US provisional patent application serial number 62/309,610, filed on March 17, 2016, incorporated herein by reference by reference, reveals a HTTP surrogate referring to HTTP-level service endpoints that act on behalf of and with the authority of an origin server. In RFC 3040, "Internet Web Replication & Caching Taxonomy", January 2001, a surrogate is a communications port co-located with a source server, or at a different point on the network, that is delegated the authority to operate on behalf of, and typically working in close cooperation with, one or more origin servers. Devices commonly known as "reverse proxies" and "(origin) server accelerators" are both considered more suitable as replacements. Surrogates can be deployed close to the origin server, close to the location, or across the entire network - a setup similar to a content delivery network (CDN). By placing the replacement servers in distributed network locations, the service can potentially be accessed with a much shorter path and greater accessible bandwidth without needing to contact the service at its origin servers. In addition to all the benefits of direct local content access, surrogates act on behalf of the origin server (and therefore the content owner) and give content owners greater control over their behavior than normal proxies, e.g. , edge caches, or traditional CDNs. As a result, they offer greater potential to improve performance by offloading processing/network load from the origin server with transparent user experiences. Surrogates work similarly to mirror servers in that a fully qualified copy of the entire website is stored; however, it is expected that the user will be able to access a fallback service using the same FQDN/URL rather than being redirected to different FQDN/URL as mirror servers are implemented. Unlike standard HTTP intermediaries, fallbacks offer finer-grained control by the origin server and content owner due to their implicit relationship.

[007] A reintrodução de difusão seletiva para clientes que ocorre para recuperar o mesmo recurso da web aproximadamente ao mesmo tempo se baseia nos mecanismos descritos no documento WO2016123516A1. À medida que toda a camada de rede e transporte é removida para trocar solicitações de HTTP e suas respostas entre um ou mais NAPs de cliente (cNAPs) e um NAP de servidor (sNAP), o mapeamento de uma resposta de HTTP de entrada de um sNAP, fornecido por meio de difusão seletiva coincidente, para vários pontos de extremidade IP específicos é uma questão aberta. Situações que têm dois clientes de IP solicitando o mesmo URL aproximadamente ao mesmo tempo foram descritas no documento WO2016123516A1. No entanto, os problemas permanecem não solucionados quando o conteúdo na resposta de HTTP de um servidor web difere dependendo das informações específicas fornecidas no cabeçalho da solicitação de HTTP do cliente de HTTP. Por exemplo, se um cliente da web não puder ler uma resposta de HTTP adequadamente devido a problemas internos de aplicativos de HTTP, o cliente pode emitir uma solicitação de HTTP para o mesmo recurso novamente, mas usando um campo de cabeçalho HTTP de "Faixa" solicitando uma faixa específica de bytes da resposta apenas. Outro tipo de informação de cabeçalho é o tipo de método de solicitação de HTTP, com diferentes métodos de solicitação geralmente resultando em diferentes respostas de HTTP (HTTP GET x HTTP PUT ou PUSH).[007] The reintroduction of multicast to clients that occurs to retrieve the same web resource at approximately the same time is based on the mechanisms described in document WO2016123516A1. As the entire network and transport layer is removed to exchange HTTP requests and their responses between one or more client NAPs (cNAPs) and a server NAP (sNAP), the mapping of an incoming HTTP response from a sNAP, delivered via coincident multicast, to multiple specific IP endpoints is an open question. Situations that have two IP clients requesting the same URL at approximately the same time have been described in WO2016123516A1. However, problems remain unresolved when the content in a web server's HTTP response differs depending on the specific information provided in the HTTP client's HTTP request header. For example, if a web client cannot read an HTTP response properly due to internal HTTP application issues, the client can issue an HTTP request for the same resource again, but using a "Range" HTTP header field requesting a specific range of bytes from the response only. Another type of header information is the HTTP request method type, with different request methods generally resulting in different HTTP responses (HTTP GET vs. HTTP PUT or PUSH).

[008] Além disso, há certas técnicas possíveis durante a programação de uma presença de web totalmente responsiva nas quais o servidor web fornece um conteúdo marcado como MIME específico em diferentes níveis de qualidade dependendo do cliente que solicita o conteúdo. Uma faixa de campos de cabeçalho HTTP disponíveis está disponível, por exemplo, aqueles descritos em RFC 4229, que podem afetar o conteúdo de uma resposta de HTTP.[008] Additionally, there are certain techniques possible when programming a fully responsive web presence in which the web server provides specific MIME-tagged content at different quality levels depending on the client requesting the content. A range of available HTTP header fields are available, for example those described in RFC 4229, which can affect the content of an HTTP response.

SUMÁRIOSUMMARY

[009] Os sistemas e métodos revelados na presente invenção procuram abordar a integridade do conteúdo HTTP entregue em um sistema de HTTP através de ICN. Em relação ao cenário em que as informações adicionais em um cabeçalho de solicitação de HTTP determinam o conteúdo que um servidor da web fornece sob um determinado URL de resposta, a presente revelação aborda a integridade do conteúdo fornecido através de difusão seletiva coincidente e da formação de um grupo de difusões seletivas correspondente dentro do sNAP. Além disso, a presente revelação aborda a questão de fornecer substitutos colocados e seus NAPs estendidos (eNAPs) com informações sobre como tratar uma mensagem de HTTP de forma equivalente ao tratamento dessa mensagem pelo servidor competente original.[009] The systems and methods disclosed in the present invention seek to address the integrity of HTTP content delivered on an HTTP system via ICN. In connection with the scenario in which additional information in an HTTP request header determines the content that a web server provides under a given response URL, the present disclosure addresses the integrity of content provided through coincident multicast and the formation of a corresponding selective broadcast group within sNAP. Furthermore, the present disclosure addresses the issue of providing collocated surrogates and their extended NAPs (eNAPs) with information about how to treat an HTTP message in a manner equivalent to the treatment of that message by the original competent server.

[0010] Um método exemplificador é executado por um ponto de conexão de rede do cliente (cNAP, de "client network attachment point") em uma rede centrada em informações (ICN). O cNAP recebe de um cliente uma solicitação de HTTP que inclui um identificador de recurso e ao menos um campo de cabeçalho. O cNAP gera um identificador de regra de proxy de solicitação (PRID, de "proxy rule identifier") com base no campo (ou campos) de cabeçalho e gera um identificador de conteúdo de solicitação (CID, de "content identifier") com base no identificador de recurso. O cNAP envia uma mensagem de ICN de saída que solicita dados. A mensagem inclui o CID de solicitação, o PRID de solicitação e um identificador de nó do cNAP. Em resposta à mensagem de ICN de saída, o cNAP recebe uma mensagem de ICN de entrada que inclui uma resposta de HTTP, um PRID recebido e um CID recebido. Em resposta a uma determinação de que o PRID recebido é igual ao PRID de solicitação e o CID recebido é o igual ao CID de solicitação, o cNAP fornece a resposta de HTTP ao cliente.[0010] An exemplary method is performed by a client network attachment point (cNAP) in an information-centric network (ICN). cNAP receives an HTTP request from a client that includes a resource identifier and at least one header field. cNAP generates a proxy rule identifier (PRID) based on the header field (or fields), and generates a request content identifier (CID) based on in the resource identifier. cNAP sends an outbound ICN message that requests data. The message includes the request CID, request PRID, and a cNAP node identifier. In response to the outgoing ICN message, cNAP receives an incoming ICN message that includes an HTTP response, a received PRID, and a received CID. In response to a determination that the received PRID is the same as the request PRID and the received CID is the same as the request CID, cNAP provides the HTTP response to the client.

[0011] Em algumas modalidades, as regras de proxy são fornecidas a cada cNAP que instrui o cNAP sobre como os PRIDs devem ser gerados a partir do campo (ou campos) de cabeçalho. Algumas regras de proxy são regras específicas de FQDN que são aplicáveis apenas a recursos solicitados usando FQDNs específicos (nomes de domínio totalmente qualificado). Outras regras de proxy são regras de proxy genéricas que são aplicáveis independentemente do FQDN. Em algumas modalidades, as regras de proxy indicam como os dados do cabeçalho devem ser dispostos em uma estrutura de dados a partir da qual um PRID é determinado. Por exemplo, uma regra de proxy pode indicar como os dados do cabeçalho devem ser dispostos em pares de valor do atributo de uma cadeia, como uma estrutura de dados XML, e uma função hash pode ser aplicada à cadeia resultante para gerar um PRID.[0011] In some embodiments, proxy rules are provided to each cNAP that instruct the cNAP on how PRIDs should be generated from the header field (or fields). Some proxy rules are FQDN-specific rules that are applicable only to resources requested using specific FQDNs (fully qualified domain names). Other proxy rules are generic proxy rules that are applicable regardless of the FQDN. In some embodiments, proxy rules indicate how header data should be arranged in a data structure from which a PRID is determined. For example, a proxy rule can indicate how header data should be arranged in attribute-value pairs of a string, such as an XML data structure, and a hash function can be applied to the resulting string to generate a PRID.

[0012] Em algumas modalidades, um método é executado por um ponto de conexão de rede de lado do cliente (cNAP) em uma rede centrada em informações (ICN). Em tal método, o cNAP recebe de um cliente uma solicitação de HTTP que inclui um identificador de recurso e ao menos um campo de cabeçalho. O cNAP gera um identificador de regra de proxy de solicitação (PRID) com base no ao menos um campo de cabeçalho, gera um identificador de conteúdo (CID) com base no identificador de hospedeiro (FQDN) e gera um identificador de conteúdo reverso (rCID, de "reverse content identifier") com base no URL. O cNAP mantém um mapeamento de rCID para PRID que inclui o identificador de comunicação de como alcançar o cliente. O cNAP envia uma mensagem de ICN de saída que solicita dados, sendo que a mensagem inclui o CID, o PRID gerado e um identificador de nó do cNAP e a solicitação de HTTP. Em resposta à mensagem de ICN de saída, o cNAP recebe uma mensagem de ICN de entrada que inclui uma resposta de HTTP, um PRID e um rCID. Em resposta a uma determinação de que o rCID e o PRID recebidos são iguais ao PRID e ao rCID de solicitação, o cNAP fornece a resposta de HTTP ao cliente usando o identificador de comunicação armazenado.[0012] In some embodiments, a method is performed by a client-side network connection point (cNAP) in an information-centric network (ICN). In such a method, cNAP receives an HTTP request from a client that includes a resource identifier and at least one header field. cNAP generates a proxy rule identifier (PRID) based on at least one header field, generates a content identifier (CID) based on the host identifier (FQDN), and generates a reverse content identifier (rCID) , from "reverse content identifier") based on the URL. cNAP maintains an rCID to PRID mapping that includes the communication identifier for how to reach the client. cNAP sends an outgoing ICN message that requests data, where the message includes the CID, the generated PRID, and a cNAP node identifier and the HTTP request. In response to the outgoing ICN message, cNAP receives an incoming ICN message that includes an HTTP response, a PRID, and an rCID. In response to a determination that the received rCID and PRID are the same as the request PRID and rCID, cNAP provides the HTTP response to the client using the stored communication identifier.

[0013] Em algumas modalidades, um método é executado por um ponto de conexão de rede de lado do servidor (sNAP, de "server-side network attachment point") em uma rede centrada em informações (ICN). Em tal método, o sNAP recebe uma mensagem de ICN de entrada que inclui uma solicitação de HTTP, um CID, um rCID, um PRID e um NID. Em resposta à mensagem de ICN, o sNAP cria um grupo de difusão seletiva potencial usando o rCID e o PRID e o NID como membros do grupo. O sNAP envia a solicitação de HTTP para um servidor adequado com o uso de um endereço IP pré-armazenado e um identificador de porta da camada de transporte para esse servidor. Ao receber a resposta de HTTP, o sNAP obtém o grupo de difusão seletiva potencial, que ainda está aberto para novos membros com base nas informações de rCID e PRID, e o sNAP fecha, então, o grupo de difusão seletiva. O sNAP publica subsequentemente a resposta de HTTP, o rCID e o PRID para todos os membros do grupo de difusão seletiva.[0013] In some embodiments, a method is performed by a server-side network attachment point (sNAP) in an information-centric network (ICN). In such a method, sNAP receives an incoming ICN message that includes an HTTP request, a CID, an rCID, a PRID, and a NID. In response to the ICN message, sNAP creates a potential multicast group using the rCID and the PRID and NID as group members. sNAP sends the HTTP request to a suitable server using a pre-stored IP address and transport layer port identifier for that server. Upon receiving the HTTP response, sNAP obtains the potential multicast group, which is still open for new members based on the rCID and PRID information, and sNAP then closes the multicast group. sNAP subsequently publishes the HTTP response, rCID, and PRID to all members of the multicast group.

BREVE DESCRIÇÃO DOS DESENHOSBRIEF DESCRIPTION OF THE DRAWINGS

[0014] Um entendimento mais detalhado pode ser obtido a partir da descrição a seguir, apresentada a título de exemplo em conjunto com os desenhos em anexo, nos quais: A Figura 1A mostra um sistema de comunicações exemplificador, no qual uma ou mais modalidades reveladas podem ser implementadas.[0014] A more detailed understanding can be obtained from the following description, presented by way of example in conjunction with the attached drawings, in which: Figure 1A shows an exemplary communications system, in which one or more embodiments disclosed can be implemented.

[0015] A Figura 1B mostra uma unidade de transmissão/recepção sem fio exemplificadora (WTRU, de "wireless transmit/receive unit") que pode ser usada dentro do sistema de comunicações da Figura 1A.[0015] Figure 1B shows an exemplary wireless transmit/receive unit (WTRU) that can be used within the communications system of Figure 1A.

[0016] A Figura 1C mostra uma rede de acesso por rádio exemplificadora (RAN, de "radio access network") e uma rede principal exemplificadora que podem ser usadas no sistema de comunicações da Figura 1A.[0016] Figure 1C shows an exemplary radio access network (RAN) and an exemplary core network that can be used in the communications system of Figure 1A.

[0017] A Figura 2 mostra uma modalidade de uma visão geral de sistema dos diferentes tipos de NAP que podem existir em um sistema de roteamento flexível habilitado por substituto.[0017] Figure 2 shows one embodiment of a system overview of the different types of NAP that may exist in a surrogate-enabled flexible routing system.

[0018] A Figura 3 mostra uma modalidade de um espaço de nomes com identificadores de escopo para uso com regras de proxy.[0018] Figure 3 shows an embodiment of a namespace with scope identifiers for use with proxy rules.

[0019] A Figura 4 mostra um gráfico de sequência de mensagens para uma modalidade da distribuição de regras de proxy do sNAP primário para um cNAP ou eNAP com o uso do espaço de nomes apresentado em relação à Figura 3.[0019] Figure 4 shows a message sequence graph for one embodiment of distributing proxy rules from the primary sNAP to a cNAP or eNAP using the namespace shown in relation to Figure 3.

[0020] A Figura 5 mostra um gráfico de sequência de mensagens para uma modalidade de um eNAP que obtém regras de proxy para o(s) FQDN(s) que ele deve servir.[0020] Figure 5 shows a message sequence graph for an embodiment of an eNAP that obtains proxy rules for the FQDN(s) it is to serve.

[0021] A Figura 6 mostra um gráfico de sequência de mensagens para uma modalidade de um sNAP que encaminha regras de proxy atualizadas para todos os NAPs que recuperaram anteriormente regras para o FQDN específico.[0021] Figure 6 shows a message sequence graph for an embodiment of an sNAP that forwards updated proxy rules to all NAPs that previously retrieved rules for the specific FQDN.

[0022] A Figura 7 mostra um gráfico de sequência de mensagens para uma modalidade de uma solicitação de HTTP e uma sequência de resposta de HTTP entre um cliente conectado a um cNAP e um servidor da web conectado a um sNAP, que opera sob regras de proxy.[0022] Figure 7 shows a message sequence graph for one embodiment of an HTTP request and an HTTP response sequence between a client connected to a cNAP and a web server connected to an sNAP, which operates under rules of proxy.

DESCRIÇÃO DETALHADADETAILED DESCRIPTION

[0023] Uma descrição detalhada de modalidades ilustrativas será agora fornecida com referência às várias figuras. Embora esta descrição forneça exemplos detalhados de possíveis implementações, deve-se notar que os detalhes fornecidos se destinam a ser a título de exemplo e de forma alguma limitam o escopo do pedido.[0023] A detailed description of illustrative embodiments will now be provided with reference to the various figures. Although this description provides detailed examples of possible implementations, it should be noted that the details provided are intended to be by way of example and in no way limit the scope of the application.

[0024] Observe que vários elementos de hardware de uma ou mais das modalidades descritas são chamados de "módulos" que realizam (isto é, realizam, executam e similares) várias funções que são descritas aqui em conjunto com os respectivos módulos. Para uso na presente invenção, um módulo inclui um hardware (por exemplo, um ou mais processadores, um ou mais microprocessadores, um ou mais microcontroladores, um ou mais microcircuitos, um ou mais circuitos integrados de aplicação específica (ASICs, de "application-specific integrated circuits"), uma ou mais matrizes de portas programáveis em campo (FPGA, de "field programmable gate arrays"), um ou mais dispositivos de memória) considerado adequado pelos versados na técnica relevante para uma dada implementação. Cada módulo descrito pode incluir também instruções executáveis para executar a uma ou mais funções descritas como sendo executadas pelo respectivo módulo, e observa-se que essas instruções podem assumir a forma de ou incluir instruções de hardware (isto é, com fio), instruções de firmware, instruções de software e/ou similares, e podem ser armazenadas em qualquer meio ou mídia não transitória legível por computador, comumente denominada RAM, ROM, etc.[0024] Note that various hardware elements of one or more of the described embodiments are called "modules" that perform (i.e., perform, perform, and the like) various functions that are described herein in conjunction with the respective modules. For use in the present invention, a module includes hardware (e.g., one or more processors, one or more microprocessors, one or more microcontrollers, one or more microcircuits, one or more application-specific integrated circuits (ASICs). specific integrated circuits"), one or more field programmable gate arrays (FPGA), one or more memory devices) deemed suitable by those skilled in the art relevant to a given implementation. Each described module may also include executable instructions for performing one or more functions described as being performed by the respective module, and it is noted that such instructions may take the form of or include hardware (i.e., wired) instructions, firmware, software instructions and/or similar, and may be stored on any computer-readable non-transitory medium or media, commonly called RAM, ROM, etc.

Hardware de rede exemplificador.Exemplary network hardware.

[0025] A Figura 1A é um diagrama de um sistema de comunicações exemplificador 100 no qual uma ou mais modalidades reveladas podem ser implementadas. O sistema de comunicações 100 pode ser um sistema de acesso múltiplo que fornece conteúdo, como voz, dados, vídeo, mensagens, radiodifusão, etc., para múltiplos usuários sem fio. O sistema de comunicações 100 pode possibilitar que múltiplos usuários sem fio acessem tal conteúdo através do compartilhamento de recursos de sistema, incluindo largura de banda sem fio. Por exemplo, os sistemas de comunicações 100 podem empregar um ou mais métodos de acesso ao canal, como acesso múltiplo por divisão de código (CDMA - Code Division Multiple Access), acesso múltiplo por divisão de tempo (TDMA - Time Division Multiple Access), acesso múltiplo por divisão de frequência (FDMA - Frequency Division Multiple Access), FDMA ortogonal (OFDMA), FDMA de portadora única (SC-FDMA - Single-Carrier Frequency Division Multiple Access) e similares.[0025] Figure 1A is a diagram of an exemplary communications system 100 in which one or more disclosed embodiments can be implemented. The communications system 100 may be a multiple access system that provides content, such as voice, data, video, messaging, broadcasting, etc., to multiple wireless users. Communications system 100 may enable multiple wireless users to access such content by sharing system resources, including wireless bandwidth. For example, communications systems 100 may employ one or more channel access methods, such as code division multiple access (CDMA), time division multiple access (TDMA), frequency division multiple access (FDMA - Frequency Division Multiple Access), orthogonal FDMA (OFDMA), single-carrier FDMA (SC-FDMA - Single-Carrier Frequency Division Multiple Access) and similar.

[0026] Conforme mostrado na Figura 1A, o sistema de comunicações 100 pode incluir unidades de transmissão/recepção sem fio (WTRUs - Wireless Transmit/Receive Units) 102a, 102b, 102c, 102d, uma rede de acesso via rádio (RAN - Radio Access Network) 104, uma rede principal 106, uma rede telefônica pública comutada (PSTN - Public Switched Telephone Network) 108, a Internet 110, e outras redes 112, embora será reconhecido que as modalidades reveladas contemplam qualquer número de WTRUs, estações base, redes e/ou elementos de rede. Cada uma das WTRUs 102a, 102b, 102c, 102d pode ser qualquer tipo de dispositivo configurado para operar e/ou se comunicar em um ambiente sem fio. A título de exemplo, as WTRUs 102a, 102b, 102c, 102d podem ser configuradas para transmitir e/ou receber sinais sem fio e podem incluir equipamento de usuário (UE - User Equipment), uma estação móvel, uma unidade assinante fixa ou móvel, um pager, um telefone celular, um assistente digital pessoal (PDA - Personal Digital Assistant), um smartphone, um computador do tipo laptop, um computador do tipo netbook, um computador pessoal, um sensor sem fio, produtos eletrônicos de consumo e similares.[0026] As shown in Figure 1A, the communications system 100 may include wireless transmit/receive units (WTRUs) 102a, 102b, 102c, 102d, a radio access network (RAN). Access Network) 104, a core network 106, a public switched telephone network (PSTN) 108, the Internet 110, and other networks 112, although it will be recognized that the disclosed embodiments contemplate any number of WTRUs, base stations, networks and/or network elements. Each of the WTRUs 102a, 102b, 102c, 102d may be any type of device configured to operate and/or communicate in a wireless environment. By way of example, the WTRUs 102a, 102b, 102c, 102d may be configured to transmit and/or receive wireless signals and may include user equipment (UE - User Equipment), a mobile station, a fixed or mobile subscriber unit, a pager, a cell phone, a personal digital assistant (PDA), a smartphone, a laptop-type computer, a netbook-type computer, a personal computer, a wireless sensor, consumer electronics, and the like.

[0027] O sistema de comunicações 100 pode incluir também uma estação-base 114a e uma estação-base 114b. Cada uma das estações base 114a, 114b pode ser qualquer tipo de dispositivo configurado para fazer interface sem fio com ao menos uma das WTRUs 102a, 102b, 102c, 102d para facilitar o acesso a uma ou mais redes de comunicação, como a rede principal 106, a Internet 110 e/ou as redes 112. A título de exemplo, as estações-base 114a, 114b podem ser uma estação-base transceptora (BTS - Base Transceiver Station), um nó B, um eNodeB, um Nó B de origem, um eNodeB de origem, um controlador de local, um ponto de acesso (AP - Access Point), um roteador sem fio e similares. Embora as estações-base 114a, 114b sejam, cada uma, mostradas como um elemento único, será reconhecido que as estações-base 114a, 114b podem incluir qualquer número de estações-base e/ou elementos de rede interconectados.[0027] The communications system 100 may also include a base station 114a and a base station 114b. Each of the base stations 114a, 114b may be any type of device configured to interface wirelessly with at least one of the WTRUs 102a, 102b, 102c, 102d to facilitate access to one or more communication networks, such as the main network 106 , the Internet 110 and/or the networks 112. By way of example, the base stations 114a, 114b may be a base transceiver station (BTS), a node B, an eNodeB, a source Node B , a source eNodeB, a location controller, an access point (AP - Access Point), a wireless router and the like. Although base stations 114a, 114b are each shown as a single element, it will be recognized that base stations 114a, 114b may include any number of interconnected base stations and/or network elements.

[0028] A estação-base 114a pode ser parte da RAN (Radio Access Network - Rede de Acesso por Rádio) 104, que pode também incluir outras estações-base e/ou elementos de rede (não mostrados), como um controlador de estação-base (BSC - Base Station Controller), um controlador de rede de rádio (RNC - Radio Network Controller), nós de retransmissão, etc. A estação-base 114a e/ou a estação-base 114b pode ser configurada para transmitir e/ou receber sinais sem fio dentro de uma região geográfica específica, que pode ser chamada de célula (não mostrada). A célula pode, ainda, ser dividida em setores de célula. Por exemplo, a célula associada à estação-base 114a pode ser dividida em três setores. Dessa forma, em uma modalidade, a estação-base 114a pode incluir três transceptores, por exemplo, um para cada setor da célula. Em outra modalidade, a estação-base 114a pode empregar Tecnologia de múltiplas entradas e múltiplas saídas (MIMO - Multiple Input Multiple Output) e, portanto, pode utilizar múltiplos transceptores para cada setor da célula.[0028] Base station 114a may be part of the RAN (Radio Access Network) 104, which may also include other base stations and/or network elements (not shown), such as a station controller -base (BSC - Base Station Controller), a radio network controller (RNC - Radio Network Controller), relay nodes, etc. Base station 114a and/or base station 114b may be configured to transmit and/or receive wireless signals within a specific geographic region, which may be called a cell (not shown). The cell can also be divided into cell sectors. For example, the cell associated with base station 114a may be divided into three sectors. Thus, in one embodiment, base station 114a may include three transceivers, for example, one for each sector of the cell. In another embodiment, the base station 114a may employ Multiple Input Multiple Output (MIMO) technology and, therefore, may utilize multiple transceivers for each sector of the cell.

[0029] As estações-base 114a, 114b podem se comunicar com uma ou mais dentre as WTRUs 102a, 102b, 102c, 102d através de uma interface aérea 116, que pode ser qualquer link de comunicação sem fio (por exemplo, radiofrequência (RF), micro-ondas, infravermelho (IR, de "infrared"), ultravioleta (UV), luz visível, etc.). A interface aérea 116 pode ser estabelecida através do uso de qualquer tecnologia de acesso por rádio (RAT, de "Radio Access Technology") adequada.[0029] Base stations 114a, 114b may communicate with one or more of WTRUs 102a, 102b, 102c, 102d via an air interface 116, which may be any wireless communication link (e.g., radio frequency (RF) ), microwaves, infrared (IR, "infrared"), ultraviolet (UV), visible light, etc.). The air interface 116 may be established using any suitable radio access technology (RAT).

[0030] Mais especificamente, conforme indicado acima, o sistema de comunicações 100 pode ser um sistema de acesso múltiplo e pode empregar um ou mais esquemas de acesso ao canal, como CDMA, TDMA, FDMA, OFDMA, SC-FDMA e similares. Por exemplo, a estação-base 114a na RAN 104 e as WTRUs 102a, 102b, 102c podem implementar uma tecnologia de rádio, como o sistema universal de telecomunicações móveis (UMTS, de "Universal Mobile Telecommunications System"), acesso terrestre universal por rádio (UTRA, de "Universal Terrestrial Radio Access") que pode estabelecer a interface aérea 116 mediante o uso de CDMA de banda larga (WCDMA). O WCDMA pode incluir protocolos de comunicação, como Acesso de Pacote de Alta Velocidade (HSPA - High-Speed Packet Access) e/ou HSPA evoluído (HSPA+). O HSPA pode incluir Acesso de Pacote de Downlink de Alta Velocidade (HSDPA - High-Speed Downlink Packet Access) e/ou Acesso de Pacote de Uplink de Alta Velocidade (HSUPA - High-Speed Uplink Packet Access).[0030] More specifically, as indicated above, the communications system 100 may be a multiple access system and may employ one or more channel access schemes, such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, and the like. For example, base station 114a in RAN 104 and WTRUs 102a, 102b, 102c may implement a radio technology such as Universal Mobile Telecommunications System (UMTS), universal terrestrial radio access (UTRA, for "Universal Terrestrial Radio Access") which can establish air interface 116 using wideband CDMA (WCDMA). WCDMA may include communication protocols such as High-Speed Packet Access (HSPA) and/or evolved HSPA (HSPA+). HSPA may include High-Speed Downlink Packet Access (HSDPA) and/or High-Speed Uplink Packet Access (HSUPA).

[0031] Em outra modalidade, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar uma tecnologia de rádio, como o acesso terrestre por rádio de UMTS evoluído (E-UTRA), que pode estabelecer a interface aérea 116 mediante o uso de evolução de longo prazo (LTE) e/ou LTE avançada (LTE-A).[0031] In another embodiment, the base station 114a and the WTRUs 102a, 102b, 102c may implement a radio technology, such as evolved UMTS radio terrestrial access (E-UTRA), which may establish the air interface 116 through the use of long term evolution (LTE) and/or LTE advanced (LTE-A).

[0032] Em outras modalidades, a estação-base 114a e as WTRUs 102a, 102b, 102c podem implementar tecnologias de rádio, como IEEE 802.16 (ou seja, Interoperabilidade Mundial para Acesso de Micro-Ondas (WiMAX - Worldwide Interoperability for Microwave Access)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, Norma Provisória 2000 (IS-2000), Norma Provisória 95 (IS-95), Norma Provisória 856 (IS-856), Sistema Global para Comunicações Móveis (GSM - Global System for Mobile Communications), Taxas de Dados Aumentadas para Evolução GSM (EDGE - Enhanced Data Rates for GSM Evolution), EDGE de GSM (GERAN) e similares.[0032] In other embodiments, the base station 114a and the WTRUs 102a, 102b, 102c may implement radio technologies such as IEEE 802.16 (i.e., Worldwide Interoperability for Microwave Access (WiMAX) ), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS-95), Interim Standard 856 (IS-856), Global System for Mobile Communications (GSM - Global System for Mobile Communications), Enhanced Data Rates for GSM Evolution (EDGE - Enhanced Data Rates for GSM Evolution), GSM EDGE (GERAN) and similar.

[0033] A estação-base 114b na Figura 1A pode ser um roteador sem fio, um nó B de origem, um eNodeB de origem, ou um ponto de acesso, por exemplo, e pode utilizar qualquer RAT ("Radio Access Technology" - Tecnologia de Acesso por Rádio) adequada para facilitar a conectividade sem fio em uma área localizada, como um local de trabalho, uma residência, um veículo, um campus e similares. Em uma modalidade, a estação-base 114b e as WTRUs 102c, 102d podem implementar uma tecnologia de rádio, como IEEE 802.11, para estabelecer uma rede de área local sem fio (WLAN). Em outra modalidade, a estação-base 114b e as WTRUs 102c, 102d podem implementar uma tecnologia de rádio, como IEEE 802.15, para estabelecer uma rede de área pessoal sem fio (WPAN - Wireless Personal Area Network). Em ainda outra modalidade, a estação-base 114b e as WTRUs 102c, 102d podem utilizar uma RAT com base em celular (por exemplo, WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) para estabelecer uma picocélula ou uma femtocélula. Conforme mostrado na Figura 1A, a estação-base 114b pode ter uma conexão direta com a Internet 110. Dessa forma, a estação-base 114b pode não ser necessária para acessar a Internet 110 através da rede principal 106.[0033] The base station 114b in Figure 1A may be a wireless router, a source node B, a source eNodeB, or an access point, for example, and may utilize any RAT ("Radio Access Technology" - Radio Access Technology) suitable for facilitating wireless connectivity in a localized area such as a workplace, a home, a vehicle, a campus, and the like. In one embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology, such as IEEE 802.11, to establish a wireless local area network (WLAN). In another embodiment, the base station 114b and the WTRUs 102c, 102d may implement a radio technology, such as IEEE 802.15, to establish a wireless personal area network (WPAN). In yet another embodiment, the base station 114b and the WTRUs 102c, 102d may utilize a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) to establish a picocell or a femtocell . As shown in Figure 1A, the base station 114b may have a direct connection to the Internet 110. Therefore, the base station 114b may not be necessary to access the Internet 110 through the main network 106.

[0034] A RAN 104 pode estar em comunicação com a rede principal 106, que pode ser qualquer tipo de rede configurada para fornecer voz, dados, aplicativos e/ou serviços de voz sobre protocolo de Internet (VoIP - Voice Over Internet Protocol) para uma ou mais dentre as WTRUs 102a, 102b, 102c, 102d. Por exemplo, a rede principal 106 pode fornecer controle de chamada, serviços de cobrança, serviços móveis com base em localização, chamada pré-paga, conectividade de Internet, distribuição de vídeo, etc., e/ou executar funções de segurança de alto nível, como autenticação de usuário. Embora não mostrado na Figura 1A, será reconhecido que a RAN 104 e/ou a rede principal 106 podem estar em comunicação direta ou indireta com outras RANs que empregam a mesma RAT, como a RAN 104, ou uma RAT diferente. Por exemplo, além de ser conectada à RAN 104, que pode utilizar uma tecnologia de rádio E-UTRA, a rede principal 106 também pode estar em comunicação com outra RAN (não mostrada) que emprega uma tecnologia de rádio GSM.[0034] The RAN 104 may be in communication with the core network 106, which may be any type of network configured to provide voice, data, applications and/or Voice Over Internet Protocol (VoIP) services to one or more of WTRUs 102a, 102b, 102c, 102d. For example, the core network 106 may provide call control, billing services, location-based mobile services, prepaid calling, Internet connectivity, video distribution, etc., and/or perform high-level security functions. , such as user authentication. Although not shown in Figure 1A, it will be recognized that RAN 104 and/or core network 106 may be in direct or indirect communication with other RANs employing the same RAT, such as RAN 104, or a different RAT. For example, in addition to being connected to RAN 104, which may utilize an E-UTRA radio technology, the core network 106 may also be in communication with another RAN (not shown) that employs a GSM radio technology.

[0035] A rede principal 106 também pode servir como uma porta de comunicação ("gateway") para as WTRUs 102a, 102b, 102c, 102d acessarem a PSTN ("Public Switched Telephone Network", ou rede telefônica pública comutada) 108, a Internet 110 e/ou outras redes 112. A PSTN 108 pode incluir redes telefônicas de circuito comutado que fornecem serviço telefônico convencional (POTS - Plain Old Telephone Service). A Internet 110 pode incluir um sistema global de redes de computador e dispositivos interconectados que usam protocolos de comunicação comuns, como o protocolo de controle de transmissão (TCP - Transmission Control Protocol), o protocolo de datagrama de usuário (UDP - User Datagram Protocol) e o protocolo de Internet (IP - Internet Protocol) no conjunto de protocolos de Internet TCP/IP. As redes 112 podem incluir redes de comunicações com fio ou sem fio pertencentes e/ou operadas por outros provedores de serviços. Por exemplo, as redes 112 podem incluir outra rede principal conectada a uma ou mais RANs, que podem empregar a mesma RAT, como a RAN 104, ou uma RAT diferente.[0035] The main network 106 can also serve as a gateway for the WTRUs 102a, 102b, 102c, 102d to access the PSTN ("Public Switched Telephone Network") 108, the Internet 110 and/or other networks 112. The PSTN 108 may include circuit-switched telephone networks that provide conventional telephone service (POTS - Plain Old Telephone Service). The Internet 110 may include a global system of computer networks and interconnected devices that use common communication protocols, such as Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and User Datagram Protocol (UDP). and the Internet Protocol (IP) in the TCP/IP suite of Internet protocols. Networks 112 may include wired or wireless communications networks owned and/or operated by other service providers. For example, networks 112 may include another core network connected to one or more RANs, which may employ the same RAT, such as RAN 104, or a different RAT.

[0036] Algumas ou todas dentre as WTRUs 102a, 102b, 102c, 102d no sistema de comunicações 100 podem incluir capacidades de múltiplos modos, ou seja, as WTRUs 102a, 102b, 102c, 102d podem incluir múltiplos transceptores para a comunicação com redes sem fio diferentes através de diferentes links sem fio. Por exemplo, a WTRU 102c mostrada na Figura 1A pode ser configurada para se comunicar com a estação-base 114a, que pode empregar uma tecnologia de rádio com base em celular, e com a estação-base 114b, que pode empregar uma tecnologia de rádio IEEE 802.[0036] Some or all of the WTRUs 102a, 102b, 102c, 102d in the communications system 100 may include multi-mode capabilities, that is, the WTRUs 102a, 102b, 102c, 102d may include multiple transceivers for communicating with wireless networks. different wires over different wireless links. For example, the WTRU 102c shown in Figure 1A may be configured to communicate with the base station 114a, which may employ a cellular-based radio technology, and the base station 114b, which may employ a cellular-based radio technology. IEEE 802.

[0037] A Figura 1B é um diagrama de sistema de uma WTRU 102 exemplificadora. Conforme mostrado na Figura 1B, a WTRU 102 pode incluir um processador 118, um transceptor 120, um elemento de transmissão/recepção 122, um alto-falante/microfone 124, um bloco de teclas 126, um monitor/touchpad 128, uma memória não removível 130, uma memória removível 132, uma fonte de energia 134, um conjunto de circuitos eletrônicos de sistema de posicionamento global (GPS - Global Positioning System) 136 e outros periféricos 138. Será reconhecido que a WTRU 102 pode incluir qualquer subcombinação dos elementos supracitados enquanto permanece consistente com uma modalidade.[0037] Figure 1B is a system diagram of an exemplary WTRU 102. As shown in Figure 1B, the WTRU 102 may include a processor 118, a transceiver 120, a transmit/receive element 122, a speaker/microphone 124, a key block 126, a monitor/touchpad 128, a memory no. removable memory 130, a removable memory 132, a power source 134, a global positioning system (GPS) electronic circuitry 136, and other peripherals 138. It will be recognized that the WTRU 102 may include any subcombination of the aforementioned elements while remaining consistent with a modality.

[0038] O processador 118 pode ser um processador para uso geral, um processador para uso especial, um processador convencional, um processador de sinal digital (DSP - Digital Signal Processor), uma pluralidade de microprocessadores, um ou mais microprocessadores em associação com um núcleo de DSP, um controlador, um microcontrolador, Circuitos Integrados de Aplicação Específica (ASICs - Application Specific Integrated Circuits), circuitos de Matriz de Porta Programável em Campo (FPGA - Field Programmable Gate Array), qualquer outro tipo de circuito integrado (IC - Integrated Circuit), uma máquina de estado e similares. O processador 118 pode executar codificação de sinal, processamento de dados, controle de potência, processamento de entrada/saída e/ou qualquer outra funcionalidade que possibilite que a WTRU 102 opere em um ambiente sem fio. O processador 118 pode ser acoplado ao transceptor 120, que pode ser acoplado ao elemento de transmissão/recepção 122. Embora a Figura 1B represente o processador 118 e o transceptor 120 como componentes separados, será reconhecido que o processador 118 e o transceptor 120 podem ser integrados juntos em um pacote eletrônico ou circuito eletrônico.[0038] The processor 118 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP - Digital Signal Processor), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGA) circuits, any other type of integrated circuit (IC). Integrated Circuit), a state machine and the like. The processor 118 may perform signal encoding, data processing, power control, input/output processing, and/or any other functionality that enables the WTRU 102 to operate in a wireless environment. The processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit/receive element 122. Although Figure 1B depicts the processor 118 and the transceiver 120 as separate components, it will be recognized that the processor 118 and the transceiver 120 may be integrated together in an electronic package or electronic circuit.

[0039] O elemento de transmissão/recepção 122 pode ser configurado para transmitir sinais a, ou receber sinais de, uma estação-base (por exemplo, a estação-base 114a) através da interface aérea 116. Por exemplo, em uma modalidade, o elemento de transmissão/recepção 122 pode ser uma antena configurada para transmitir e/ou receber sinais de RF. Em outra modalidade, o elemento de transmissão/recepção 122 pode ser um emissor/detector configurado para transmitir e/ou receber sinais IR, UV ou de luz visível, por exemplo. Em ainda outra modalidade, o elemento de transmissão/recepção 122 pode ser configurado para transmitir e receber tanto sinais RF como de luz. Será reconhecido que o elemento de transmissão/recepção 122 pode ser configurado para transmitir e/ou receber qualquer combinação de sinais sem fio.[0039] The transmit/receive element 122 may be configured to transmit signals to, or receive signals from, a base station (e.g., base station 114a) via air interface 116. For example, in one embodiment, the transmit/receive element 122 may be an antenna configured to transmit and/or receive RF signals. In another embodiment, the transmit/receive element 122 may be an emitter/detector configured to transmit and/or receive IR, UV or visible light signals, for example. In yet another embodiment, the transmit/receive element 122 may be configured to transmit and receive both RF and light signals. It will be recognized that the transmit/receive element 122 may be configured to transmit and/or receive any combination of wireless signals.

[0040] Além disso, embora o elemento de transmissão/recepção 122 seja representado na Figura 1B como um elemento único, a WTRU 102 pode incluir qualquer número de elementos de transmissão/recepção 122. Mais especificamente, a WTRU 102 pode empregar a tecnologia MIMO. Dessa forma, em uma modalidade, a WTRU 102 pode incluir dois ou mais elementos de transmissão/recepção 122 (por exemplo, múltiplas antenas) para transmitir e receber sinais sem fio pela interface aérea 116.[0040] Furthermore, although the transmit/receive element 122 is depicted in Figure 1B as a single element, the WTRU 102 may include any number of transmit/receive elements 122. More specifically, the WTRU 102 may employ MIMO technology . Thus, in one embodiment, the WTRU 102 may include two or more transmit/receive elements 122 (e.g., multiple antennas) to transmit and receive wireless signals over the air interface 116.

[0041] O transceptor 120 pode ser configurado para modular os sinais que devem ser transmitidos pelo elemento de transmissão/recepção 122 e para demodular os sinais que são recebidos pelo elemento de transmissão/recepção 122. Conforme indicado acima, a WTRU 102 pode ter capacidades de modo múltiplo. Dessa forma, o transceptor 120 pode incluir múltiplos transceptores para possibilitar que a WTRU 102 se comunique por meio de múltiplas RATs, como UTRA e IEEE 802.11, por exemplo.[0041] The transceiver 120 may be configured to modulate the signals that are to be transmitted by the transmit/receive element 122 and to demodulate the signals that are received by the transmit/receive element 122. As indicated above, the WTRU 102 may have capabilities in multiple mode. In this way, transceiver 120 may include multiple transceivers to enable WTRU 102 to communicate via multiple RATs, such as UTRA and IEEE 802.11, for example.

[0042] O processador 118 da WTRU 102 pode ser acoplado ao alto- falante/microfone 124, ao bloco de teclas 126 e/ou ao monitor/touchpad 128 (por exemplo, uma unidade de exibição de tela de cristal líquido (LCD, de "Liquid Crystal Display") ou uma unidade de exibição de diodo emissor de luz orgânico (OLED, de "Organic Light-Emitting Diode")), e pode receber entradas de dados pelo usuário provenientes dos mesmos. O processador 118 também pode emitir dados de usuário para o alto-falante/microfone 124, o bloco de teclas 126 e/ou o monitor/touchpad 128. Além disso, o processador 118 pode acessar informações a partir de qualquer tipo memória adequada, como a memória não removível 130 e/ou memória removível 132, e armazenar dados na mesma. A memória não removível 130 pode incluir uma memória de acesso aleatório (RAM - Random Access Memory), memória só de leitura (ROM - Read-Only Memory), um disco rígido, ou qualquer outro tipo de dispositivo de armazenamento de memória. A memória removível 132 pode incluir um cartão de módulo de identidade de assinante (SIM - subscriber Identity Module), um bastão de memória, um cartão de memória digital segura (SD - Secure Digital) e similares. Em outras modalidades, o processador 118 pode acessar informações da memória que não está fisicamente localizada na WTRU 102, como em um servidor ou um computador de uso doméstico (não mostrado), e armazenar dados na mesma.[0042] The processor 118 of the WTRU 102 may be coupled to the speaker/microphone 124, the keypad 126, and/or the monitor/touchpad 128 (e.g., a liquid crystal display (LCD) display unit. "Liquid Crystal Display") or an organic light-emitting diode (OLED) display unit, and may receive user input from the same. Processor 118 may also output user data to speaker/microphone 124, key pad 126, and/or monitor/touchpad 128. Additionally, processor 118 may access information from any suitable memory type, such as the non-removable memory 130 and/or removable memory 132, and storing data therein. The non-removable memory 130 may include a random access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital memory (SD) card, and the like. In other embodiments, the processor 118 may access information from memory that is not physically located in the WTRU 102, such as in a server or a home computer (not shown), and store data therein.

[0043] O processador 118 pode receber potência da fonte de energia 134 e pode ser configurado para distribuir e/ou controlar a potência para os outros componentes na WTRU 102. A fonte de energia 134 pode ser qualquer dispositivo adequado para alimentar a WTRU 102. Por exemplo, a fonte de energia 134 pode incluir uma ou mais baterias de célula seca (por exemplo, níquel-cádmio (NiCd), níquel-zinco (NiZn), níquel-hidreto metálico (NiMH), íon de lítio (Li-Íon), etc), células solares, células de combustível e similares.[0043] Processor 118 may receive power from power source 134 and may be configured to distribute and/or control power to other components in WTRU 102. Power source 134 may be any device suitable for powering WTRU 102. For example, the power source 134 may include one or more dry cell batteries (e.g., nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel-metal hydride (NiMH), lithium-ion (Li-Ion ), etc.), solar cells, fuel cells and the like.

[0044] O processador 118 também pode ser acoplado ao conjunto de circuitos eletrônicos do GPS 136, que pode ser configurado para fornecer informações de localização (por exemplo, longitude e latitude) em relação à localização atual da WTRU 102. Em adição às, ou em vez das, informações do conjunto de circuitos eletrônicos do GPS 136, a WTRU 102 pode receber informações de localização através da interface aérea 116 de uma estação- base (por exemplo, estações-base 114a, 114b) e/ou determinar sua localização com base na temporização dos sinais recebidos de duas ou mais estações-base próximas. Será reconhecido que a WTRU 102 pode adquirir informações de localização através de qualquer método de determinação de localização adequado, enquanto permanece compatível com uma modalidade.[0044] Processor 118 may also be coupled to the electronic circuitry of GPS 136, which may be configured to provide location information (e.g., longitude and latitude) relative to the current location of WTRU 102. In addition to, or Instead of GPS electronic circuitry information 136, the WTRU 102 may receive location information via air interface 116 from a base station (e.g., base stations 114a, 114b) and/or determine its location with based on the timing of signals received from two or more nearby base stations. It will be recognized that the WTRU 102 can acquire location information through any suitable location determination method, while remaining compatible with one modality.

[0045] O processador 118 pode, ainda, ser acoplado a outros periféricos 138, que podem incluir um ou mais módulos de software e/ou hardware que fornecem recursos, funcionalidade e/ou conectividade sem fio ou com fio adicionais. Por exemplo, os periféricos 138 podem incluir um acelerômetro, uma bússola eletrônica, um transceptor de satélite, uma câmera digital (para fotografias ou vídeo), uma porta de barramento serial universal (USB - Universal Serial Bus), um dispositivo de vibração, um transceptor de televisão, um headset de mãos livres, um módulo Bluetooth®, uma unidade de rádio modulada em frequência (FM - Frequency Modulated), um reprodutor de música digital, um reprodutor de mídia, um módulo reprodutor de videogame, um navegador de Internet e similares.[0045] The processor 118 may also be coupled to other peripherals 138, which may include one or more software and/or hardware modules that provide additional features, functionality and/or wireless or wired connectivity. For example, peripherals 138 may include an accelerometer, an electronic compass, a satellite transceiver, a digital camera (for photographs or video), a Universal Serial Bus (USB) port, a vibration device, a television transceiver, a hands-free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser and similar.

[0046] A Figura 1C é um diagrama de sistema da RAN 104 e da rede principal 106 de acordo com uma modalidade. Conforme indicado acima, a RAN 104 pode empregar uma tecnologia de rádio E-UTRA para se comunicar com as WTRUs 102a, 102b, 102c através da interface aérea 116. A RAN 104 também pode estar em comunicação com a rede principal 106.[0046] Figure 1C is a system diagram of the RAN 104 and the core network 106 according to one embodiment. As indicated above, RAN 104 may employ an E-UTRA radio technology to communicate with WTRUs 102a, 102b, 102c via air interface 116. RAN 104 may also be in communication with core network 106.

[0047] A RAN 104 pode incluir eNodeBs 140a, 140b, 140c, embora se deva reconhecer que a RAN 104 pode incluir qualquer número de eNodeBs, enquanto permanece consistente com uma modalidade. Os eNodeBs 140a, 140b, 140c podem, cada um, incluir um ou mais transceptores para se comunicar com as WTRUs 102a, 102b, 102c através da interface aérea 116. Em uma modalidade, os eNodeBs 140a, 140b, 140c podem implementar a tecnologia MIMO. Assim, o eNodeB 140a, por exemplo, pode usar múltiplas antenas para transmitir e receber sinais sem fio da WTRU 102a.[0047] RAN 104 may include eNodeBs 140a, 140b, 140c, although it should be recognized that RAN 104 may include any number of eNodeBs, while remaining consistent with one embodiment. The eNodeBs 140a, 140b, 140c may each include one or more transceivers to communicate with the WTRUs 102a, 102b, 102c via the air interface 116. In one embodiment, the eNodeBs 140a, 140b, 140c may implement MIMO technology . Thus, the eNodeB 140a, for example, may use multiple antennas to transmit and receive wireless signals from the WTRU 102a.

[0048] Cada um dos eNodeBs 140a, 140b, 140c pode estar associado a uma célula específica (não mostrada) e pode ser configurado para lidar com decisões de gerenciamento de recurso de rádio, decisões de mudança automática, programação de usuários no uplink e/ou downlink e similares. Conforme mostrado na Figura 1C, os eNodeBs 140a, 140b, 140c podem se comunicar uns com os outros através de uma interface X2.[0048] Each of the eNodeBs 140a, 140b, 140c may be associated with a specific cell (not shown) and may be configured to handle radio resource management decisions, auto-switch decisions, uplink user scheduling, and/or or downlink and similar. As shown in Figure 1C, eNodeBs 140a, 140b, 140c can communicate with each other via an X2 interface.

[0049] A rede principal 106 mostrada na Figura 1C pode incluir uma porta de comunicação de gerenciamento de mobilidade (MME) 142, uma porta de comunicação servidora 144, e uma porta de comunicação de rede de dados de pacote (PDN - Packet Data Network) 146. Embora cada um dos elementos supracitados seja mostrado como parte da rede principal 106, será reconhecido que qualquer um desses elementos pode pertencer e/ou ser operado por uma entidade diferente do operador de rede principal.[0049] The core network 106 shown in Figure 1C may include a mobility management communication port (MME) 142, a server communication port 144, and a packet data network (PDN) communication port ) 146. Although each of the foregoing elements is shown as part of the core network 106, it will be recognized that any of these elements may be owned and/or operated by an entity other than the core network operator.

[0050] A MME 142 pode ser conectada a cada um dos eNodeBs 140a, 140b, 140c na RAN 104 por meio de uma interface S1, e pode servir como um nó de controle. Por exemplo, a MME 142 pode ser responsável pela autenticação de usuários das WTRUs 102a, 102b, 102c, pela ativação/desativação do portador, pela seleção de uma porta de comunicação servidora específica durante uma fixação inicial das WTRUs 102a, 102b, 102c e similares. A MME 142 também pode fornecer uma função de plano de controle para a comutação entre a RAN 104 e outras RANs (não mostradas) que empregam outras tecnologias de rádio, como GSM ou WCDMA.[0050] The MME 142 may be connected to each of the eNodeBs 140a, 140b, 140c in the RAN 104 via an S1 interface, and may serve as a control node. For example, the MME 142 may be responsible for user authentication of WTRUs 102a, 102b, 102c, bearer activation/deactivation, selection of a specific server communication port during an initial pinning of WTRUs 102a, 102b, 102c, and the like. . The MME 142 may also provide a control plane function for switching between the RAN 104 and other RANs (not shown) that employ other radio technologies, such as GSM or WCDMA.

[0051] A porta de comunicação servidora 144 pode estar conectada a cada um dos eNodeBs 140a, 140b, 140c na RAN 104 por meio da interface S1. A porta de comunicação servidora 144 pode, de modo geral, rotear e encaminhar pacotes de dados de usuário para as/a partir das WTRUs 102a, 102b, 102c. A porta de comunicação servidora 144 também pode realizar outras funções, como ancoragem de planos de usuário durante as mudanças automáticas entre eNodeBs, disparar paginação quando dados de downlink estiverem disponíveis para as WTRUs 102a, 102b, 102c, gerenciar e armazenar os contextos das WTRUs 102a, 102b, 102c e similares.[0051] The server communication port 144 may be connected to each of the eNodeBs 140a, 140b, 140c in the RAN 104 via the S1 interface. The serving communication port 144 may generally route and forward user data packets to/from the WTRUs 102a, 102b, 102c. The server communication port 144 may also perform other functions, such as anchoring user planes during automatic changes between eNodeBs, triggering paging when downlink data is available to the WTRUs 102a, 102b, 102c, managing and storing the contexts of the WTRUs 102a , 102b, 102c and similar.

[0052] A porta de comunicação servidora 144 também pode ser conectada à porta de comunicação de PDN 146, que pode fornecer às WTRUs 102a, 102b, 102c acesso a redes de pacote comutado, como a Internet 110, para facilitar as comunicações entre as WTRUs 102a, 102b, 102c e dispositivos habilitados por IP.[0052] The serving communications port 144 may also be connected to the PDN communications port 146, which may provide the WTRUs 102a, 102b, 102c with access to packet switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.

[0053] A rede principal 106 pode facilitar as comunicações com outras redes. Por exemplo, a rede principal 106 pode fornecer às WTRUs 102a, 102b, 102c acesso a redes de circuito comutado, como a PSTN 108, para facilitar as comunicações entre as WTRUs 102a, 102b, 102c e os dispositivos de comunicações terrestres tradicionais. Por exemplo, a rede principal 106 pode incluir, ou pode se comunicar com, uma porta de comunicação de IP (por exemplo, um servidor de subsistema multimídia de IP (IMS, de "IP Multimedia Subsystem")) que serve como uma interface entre a rede principal 106 e a rede PSTN 108. Além disso, a rede principal 106 pode fornecer às WTRUs 102a, 102b, 102c acesso a outras redes 112, que podem incluir outras redes com fio ou sem fio que pertencem a ou são operadas por outros fornecedores de serviço.[0053] The core network 106 can facilitate communications with other networks. For example, the core network 106 may provide the WTRUs 102a, 102b, 102c with access to circuit-switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional terrestrial communications devices. For example, the backbone network 106 may include, or may communicate with, an IP communications port (e.g., an IP Multimedia Subsystem (IMS) server) that serves as an interface between the core network 106 and the PSTN network 108. Additionally, the core network 106 may provide the WTRUs 102a, 102b, 102c with access to other networks 112, which may include other wired or wireless networks that are owned or operated by others. service providers.

Sistemas e métodos de HTTP através de ICN.HTTP systems and methods through ICN.

[0054] Os sistemas e métodos exemplificadores revelados na presente invenção utilizam uma infraestrutura de HTTP através de ICN, como a descrita no documento WO2016123516A1 em que os pontos de conexão de rede (NAPs) fornecem conectividade IP padrão para dispositivos habilitados por IP. Os NAPs encapsulam, então, o tráfego de IP recebido em um pacote de ICN apropriado, que é, então, publicado sob um item de informação nomeado estruturado. A Figura 2 mostra uma modalidade de uma visão geral de sistema dos diferentes tipos de NAP em um sistema de roteamento flexível habilitado por substituto 200 com um elemento de computação de trajetória (PCE, de "Path Computation Element") 202 que combina o ponto de encontro (RV, de "rendezvous") de elementos de rede ICN e o gerenciador de topologia (TM, de "topology manager").[0054] The exemplary systems and methods disclosed in the present invention utilize an HTTP infrastructure through ICN, such as that described in document WO2016123516A1 in which network connection points (NAPs) provide standard IP connectivity to IP-enabled devices. NAPs then encapsulate incoming IP traffic into an appropriate ICN packet, which is then published under a structured named information item. Figure 2 shows one embodiment of a system overview of the different NAP types in a surrogate-enabled flexible routing system 200 with a Path Computation Element (PCE) 202 that combines the meeting (RV, for "rendezvous") of ICN network elements and the topology manager (TM, for "topology manager").

[0055] Os NAPs do lado do servidor (sNAPs) 204 são NAPs que servem um FQDN específico pela subscrição ao ICN CID/http/fqdn e têm a capacidade de formar grupos de difusão seletiva coincidente com base, por exemplo, nos métodos descritos no documento WO2016123516A1. Os NAPs estendidos (eNAPs) 206 possibilitam que os substitutos sejam usados como servidores web primários. Os NAPs estendidos fornecem um recurso espelhado autorizado do servidor web primário, que, em alguns casos, pode ser um ambiente de recurso totalmente virtualizado. Os NAPs de lado do cliente (cNAPs) 208 são NAPs que servem clientes apenas de IP (por exemplo, o cliente 210) e possibilitam que os mesmos se comuniquem com um servidor web (por exemplo, servidor web primário 212 ou servidor web substituto 214) através de ICN 200 de modo transparente.[0055] Server-side NAPs (sNAPs) 204 are NAPs that serve a specific FQDN by subscribing to the ICN CID/http/fqdn and have the ability to form coincidental multicast groups based on, for example, the methods described in document WO2016123516A1. Extended NAPs (eNAPs) 206 enable surrogates to be used as primary web servers. Extended NAPs provide an authorized mirror resource of the primary web server, which in some cases may be a fully virtualized resource environment. Client-side NAPs (cNAPs) 208 are NAPs that serve IP-only clients (e.g., client 210) and enable them to communicate with a web server (e.g., primary web server 212 or surrogate web server 214 ) through ICN 200 in a transparent way.

[0056] Nos sistemas e métodos exemplificadores revelados na presente invenção, cada NAP se comporta como um proxy de HTTP transparente que termina a sessão TCP para tráfego de HTTP em direção aos seus pontos de extremidade IP (por exemplo, cliente e servidor). O proxy de HTTP (por exemplo, NAP) tem a capacidade de inspecionar adicionalmente a mensagem HTTP de entrada usando dois tipos de regras de proxy, ou seja, regras genéricas e específicas de FQDN.[0056] In the exemplary systems and methods disclosed in the present invention, each NAP behaves as a transparent HTTP proxy that terminates the TCP session for HTTP traffic toward its IP endpoints (e.g., client and server). The HTTP proxy (e.g. NAP) has the ability to additionally inspect the incoming HTTP message using two types of proxy rules, namely generic and FQDN-specific rules.

[0057] Em algumas modalidades exemplificadoras, as regras de proxy genéricas são campos obrigatórios contra os quais o proxy (por exemplo, um NAP) precisa, pois, de outro modo, a resposta é propensa a não ser o que o cliente HTTP estava solicitando e a integridade de toda a solicitação de recurso da web fica em risco. Por exemplo, em tais modalidades, o campo "Faixa" ou o método de solicitação HTTP na solicitação de HTTP são levados em consideração ao criar um grupo de difusão seletiva em um sNAP, ou, caso contrário, a resposta de HTTP do servidor web associado ao sNAP não seria aceita pelo cliente da web associado a um cNAP.[0057] In some exemplary embodiments, generic proxy rules are required fields that the proxy (e.g., a NAP) needs to check, as otherwise the response is likely to be not what the HTTP client was requesting. and the integrity of the entire web resource request is at risk. For example, in such embodiments, the "Range" field or the HTTP request method in the HTTP request is taken into consideration when creating a multicast group in an sNAP, or otherwise the HTTP response from the associated web server to sNAP would not be accepted by the web client associated with a cNAP.

[0058] Em modalidades exemplificadoras, as regras específicas de FQDN são regras que podem ser personalizadas que os NAPs podem levar em consideração e que possibilitam que os fornecedores de conteúdo sintonizem a criação de difusão seletiva conforme suas necessidades. Por exemplo, o conteúdo de áudio/vídeo/mídia em respostas de HTTP pode ser codificado em qualidade inferior para os pontos de extremidade móveis que o servidor web determina com base em um campo "Agente do usuário" no cabeçalho HTTP. Este comportamento pode ser comunicado ao NAP fornecendo-se uma regra de proxy específica de FQDN precisa.[0058] In exemplary embodiments, FQDN-specific rules are customizable rules that NAPs can take into account and that enable content providers to tune multicast creation to their needs. For example, audio/video/media content in HTTP responses may be encoded at a lower quality for mobile endpoints that the web server determines based on a "User Agent" field in the HTTP header. This behavior can be communicated to NAP by providing a precise FQDN-specific proxy rule.

[0059] Em modalidades exemplificadoras, as instâncias de regra de proxy a serem aplicadas são geradas em cNAPs quando se recebe a solicitação de HTTP do UE (por exemplo, cliente 210). O mesmo se aplica a respostas de HTTP recebidas de um servidor web nos sNAPs e eNAPs. Observe que as regras de proxy não estão vinculadas a uma sessão de HTTP/TCP específica, possibilitando que o sNAP crie grupos de difusão seletiva usando um único PRID que pode ser usado por todos os cNAPs para mapeá-los de volta para suas sessões de TCP atualmente abertas. Esses casos de regra de proxy são representados como um identificador exclusivo ao longo de todos os NAPs para sessões de HTTP idênticas (mesmo PRID). Se sNAPs e eNAPs fornecerem, então, respostas de HTTP através de difusão seletiva, esse identificador de instância de regra de proxy serve como o único identificador usado para todos os cNAPs para mapeá-los de volta aos clientes que solicitaram essa resposta. O dito identificador de instância de regra de proxy é transportado juntamente com cada solicitação de HTTP e publicação de resposta de HTTP.[0059] In exemplary embodiments, proxy rule instances to be applied are generated in cNAPs when receiving the HTTP request from the UE (e.g., client 210). The same applies to HTTP responses received from a web server in sNAPs and eNAPs. Note that proxy rules are not tied to a specific HTTP/TCP session, making it possible for sNAP to create multicast groups using a single PRID that can be used by all cNAPs to map them back to their TCP sessions currently open. These proxy rule cases are represented as a unique identifier across all NAPs for identical HTTP sessions (same PRID). If sNAPs and eNAPs then provide HTTP responses via multicast, this proxy rule instance identifier serves as the single identifier used for all cNAPs to map them back to the clients that requested this response. Said proxy rule instance identifier is carried along with each HTTP request and HTTP response publication.

Preenchimento de regras de proxy genéricas e específicas de FQDN.Populating generic and FQDN-specific proxy rules.

[0060] Para todos os tipos de NAPs (NAPs de cliente, servidor e substitutos/estendidos), conforme mostrado na Figura 2, as regras de proxy específicas de FQDN são preenchidas, e se uma atualização de regra de proxy estiver disponível no NAP primário, todos os cNAPs e eNAPs atualizam prontamente sua regra (ou regras) existente(s).[0060] For all types of NAPs (client, server, and fallback/extended NAPs), as shown in Figure 2, FQDN-specific proxy rules are populated, and if a proxy rule update is available on the primary NAP , all cNAPs and eNAPs promptly update their existing rule (or rules).

[0061] Em algumas modalidades, a distribuição de regras de proxy é realizada por meio de um espaço de nomes dedicado que possibilita que todos os NAPs recuperem uma regra de proxy específica de FQDN a partir do servidor primário, enquanto as regras dentro desse espaço de nomes podem ser distribuídas através da rede de publicação/subscrição do ICN subjacente. A integridade do fornecimento de conteúdo de HTTP por meio dos sistemas e métodos de difusão seletiva coincidente revelados, descritos no documento WO2016123516A1, pode ser assegurada com lógica dentro dos NAPs e a transferência de um identificador de regra de proxy exclusivo em cada publicação de HTTP na rede ICN.[0061] In some embodiments, distribution of proxy rules is accomplished through a dedicated namespace that enables all NAPs to retrieve a FQDN-specific proxy rule from the primary server, while rules within that namespace names may be distributed through the underlying ICN's publish/subscribe network. The integrity of HTTP content delivery through the disclosed coincident multicast systems and methods described in WO2016123516A1 can be ensured with logic within NAPs and the transfer of a unique proxy rule identifier in each HTTP publication in the ICN network.

Espaço de nomes de regras de proxy.Proxy rules namespace.

[0062] Para possibilitar a distribuição de regras de proxy do NAP primário que serve um FQDN específico, um espaço de nomes dedicado é revelado sob o identificador de escopo de raiz /management. O dito escopo da raiz é mostrado aqui como um nome simbólico e pode estar sujeito a acordo ou padronização, representado como um identificador ou nome numerado específico em modalidades específicas. A Figura 3 mostra uma modalidade do espaço de nomes com identificadores de escopo ilustrados como círculos brancos e identificadores de informações - sob os quais os dados podem ser publicados - como círculos sombreados. Sob a trajetória de escopo /management/proxyRules, cada FQDN é representado como um item de informação com o valor sendo um hash sobre a representação de cadeia de um FQDN, em uma modalidade possível. Este item de informação pode ser usado para trocar regras de proxy uma primeira vez entre o sNAP primário e um NAP que não recebeu as regras de proxy para um FQDN específico, bem como regras de proxy atualizadas para um FQDN específico. As operações detalhadas sobre como o espaço de nomes das regras de proxy proposto é usado podem ser encontradas abaixo.[0062] To enable distribution of proxy rules from the primary NAP serving a specific FQDN, a dedicated namespace is revealed under the /management root scope identifier. Said root scope is shown here as a symbolic name and may be subject to agreement or standardization, represented as a specific identifier or numbered name in specific embodiments. Figure 3 shows one embodiment of the namespace with scope identifiers illustrated as white circles and information identifiers - under which data can be published - as shaded circles. Under the /management/proxyRules scope path, each FQDN is represented as an item of information with the value being a hash over the string representation of an FQDN, in one possible embodiment. This information item can be used to exchange first-time proxy rules between the primary sNAP and a NAP that has not received proxy rules for a specific FQDN, as well as updated proxy rules for a specific FQDN. Detailed operations on how the proposed proxy rules namespace is used can be found below.

[0063] Entende-se que o espaço de nomes na Figura 3 pode utilizar também itens de regra de proxy dedicados sob cada FQDN para uma propagação inicial e atualizada pela interpretação do FQDN como um escopo e a adição de itens de informações /initial e /update sob cada escopo de FQDN. Nesse caso, o item initial pode ser usado para comunicar um conjunto inicial de regras sempre que um NAP tentar obter tais regras, enquanto o item update pode ser usado para atualizações futuras. Tal espaço de nomes alternativo pode, por exemplo, ser utilizado para publicar/subscrever sistemas que não notificam a adição de assinantes separadamente ao editor, exigindo, portanto, a separação sugerida de transmissão do estado inicial separadamente a partir de qualquer estado atualizado.[0063] It is understood that the namespace in Figure 3 may also utilize dedicated proxy rule items under each FQDN for initial and updated propagation by interpreting the FQDN as a scope and adding information items /initial and / update under each FQDN scope. In this case, the initial item can be used to communicate an initial set of rules whenever a NAP attempts to obtain such rules, while the update item can be used for future updates. Such an alternative namespace could, for example, be used for publish/subscribe systems that do not notify the addition of subscribers separately to the publisher, therefore requiring the suggested separation of transmitting the initial state separately from any updated state.

[0064] Na revelação a seguir, são apresentadas as operações e mensagens trocadas com base no espaço de nomes da Figura 3 por uma questão de simplicidade. Entretanto, ficará evidente para o versado na técnica que é possível modificar as várias modalidades discutidas ao longo de todo o documento para utilizar o espaço de nomes alternativo e/ou outros conforme apropriado para cenários específicos.[0064] In the following disclosure, the operations and messages exchanged based on the name space of Figure 3 are presented for the sake of simplicity. However, it will be apparent to one skilled in the art that it is possible to modify the various embodiments discussed throughout the document to utilize alternative namespace and/or others as appropriate for specific scenarios.

Preenchimento de regras de proxy para cNAPs.Populating proxy rules for cNAPs.

[0065] Uma modalidade da distribuição de regras de proxy do sNAP primário para um cNAP ou eNAP usando o espaço de nomes apresentado em relação à Figura 3 é mostrada na Figura 4 com o uso de um gráfico de sequência de mensagens (MSC, de "Message Sequence Chart"). Os elementos de rede mostrados na Figura 4 são um ponto de extremidade IP (cliente 422) que é servido por um cNAP 424, um elemento de computação de trajetória (PCE) 426 que combina o ponto de encontro (RV) de elementos ICN e um gerenciador de topologia (TM), bem como um sNAP 428, conforme mostrado na Figura 2.[0065] An embodiment of the distribution of proxy rules from the primary sNAP to a cNAP or eNAP using the namespace shown in relation to Figure 3 is shown in Figure 4 using a message sequence graph (MSC, from " Message Sequence Chart"). The network elements shown in Figure 4 are an IP endpoint (client 422) that is served by a cNAP 424, a trajectory computing element (PCE) 426 that combines the rendezvous point (RV) of ICN elements, and a topology manager (TM), as well as an sNAP 428, as shown in Figure 2.

[0066] Todas as regras de proxy genéricas obrigatórias podem ser distribuídas antes da inicialização de um NAP, por exemplo, através de um arquivo de configuração que acompanha cada implantação de NAP. Os métodos e seus significados por trás dos fluxos de mensagem enumerados na Figura 4 são descritos da seguinte forma.[0066] All mandatory generic proxy rules may be distributed prior to initialization of a NAP, for example, through a configuration file that accompanies each NAP deployment. The methods and their meanings behind the message flows enumerated in Figure 4 are described as follows.

[0067] Nas etapas 401a e 401b, o cNAP e o sNAP leem respectivamente suas regras de proxy genéricas independentemente do tempo entre si em sua fase de inicialização, ao ler o arquivo de configuração ou ao subscrever ao item de informação adequado no espaço de nomes.[0067] In steps 401a and 401b, cNAP and sNAP respectively read their generic proxy rules independently of each other in their initialization phase, when reading the configuration file or when subscribing to the appropriate information item in the namespace .

[0068] Na etapa 402, um novo servidor web para o nome de domínio totalmente qualificado (FQDN) foo.com é registrado no sNAP 428 com o uso de uma interface de registro específica. A interface de registro pode receber as informações de IP relacionadas nas quais o sNAP pode alcançar as entidades de computação para fornecer o recurso solicitado como um único ponto de extremidade IP fixo (servidor web) ou um hipervisor que mantém e opera uma fazenda de servidores.[0068] In step 402, a new web server for the fully qualified domain name (FQDN) foo.com is registered with sNAP 428 using a specific registration interface. The registry interface can receive the related IP information on which sNAP can reach the computing entities to provide the requested resource such as a single fixed IP endpoint (web server) or a hypervisor that maintains and operates a server farm.

[0069] Na etapa 403, o sNAP 428 recebe as regras de proxy específicas do FQDN fornecidas por uma entidade externa. Essas regras de proxy podem ser fornecidas por algumas entidades de gerenciamento, por exemplo, operador ou fornecedor de serviços, ou diretamente através do fornecedor do FQDN (que pode exigir conscientização para o suporte de tais regras para o fornecedor de serviços FQDN).[0069] In step 403, the sNAP 428 receives FQDN-specific proxy rules provided by an external entity. These proxy rules may be provided by some management entity, e.g., operator or service provider, or directly through the FQDN provider (which may require awareness for the support of such rules for the FQDN service provider).

[0070] Na etapa 404, o sNAP 428 anuncia a disponibilidade de regras de proxy para o FQDNfoo.com sob a trajetória /management/proxyRules pelo hashing do FQDN e coloca o valor como um identificador de informações sob a trajetória de escopo mencionada.[0070] In step 404, sNAP 428 announces the availability of proxy rules for FQDNfoo.com under the path /management/proxyRules by hashing the FQDN and places the value as an information identifier under the said scope path.

[0071] Isto completa a inicialização do sNAP primário 428 e de qualquer cNAP 424 na rede ICN. A sequência de mensagens restante na Figura 4 ilustra a recuperação de regras de proxy específicas de FQDN por um cNAP mediante a chegada de uma solicitação de HTTP para FQDN foo.com pela primeira vez.[0071] This completes the initialization of the primary sNAP 428 and any cNAP 424 in the ICN network. The remaining message sequence in Figure 4 illustrates the retrieval of FQDN-specific proxy rules by a cNAP upon the arrival of an HTTP request for FQDN foo.com for the first time.

[0072] Na etapa 405, um ponto de extremidade IP 422 servido pelo cNAP 424 emite uma solicitação de HTTP para foo.com/resource que o cNAP recebe através de sua funcionalidade de proxy HTTP transparente, que termina a sessão TCP iniciada pelo cliente.[0072] In step 405, an IP endpoint 422 served by cNAP 424 issues an HTTP request to foo.com/resource that cNAP receives through its transparent HTTP proxy functionality, which terminates the TCP session initiated by the client.

[0073] Na etapa 406, após a chegada de cada solicitação de HTTP, o cNAP verifica se existem regras de proxy específicas de FQDN para o hospedeiro a partir do qual um recurso é solicitado. Se o cNAP não puder encontrar nenhuma dessas regras, ele subscreve ao item de informação foo.com (por exemplo, com o uso de um FQDN com hash) sob o escopo pai /management/proxyRules.[0073] In step 406, upon arrival of each HTTP request, cNAP checks whether FQDN-specific proxy rules exist for the host from which a resource is requested. If cNAP cannot find any of these rules, it subscribes to the foo.com information item (for example, using a hashed FQDN) under the /management/proxyRules parent scope.

[0074] O PCE 426 corresponde ao cNAP 424 como um subscritor ao sNAP 428 como um editor (consulte a etapa 404) para o Identificador de conteúdo (CID, de "Content Identifier") /management/proxyRules/foo.com. Consequentemente, o PCE na etapa 407 emite um evento de publicação inicial ao sNAP para esse CID específico.[0074] The PCE 426 corresponds to the cNAP 424 as a subscriber to the sNAP 428 as a publisher (see step 404) for the Content Identifier (CID) /management/proxyRules/foo.com. Accordingly, the PCE in step 407 issues an initial publish event to the sNAP for that specific CID.

[0075] Na etapa 408, o sNAP publica as regras de proxy recebidas em 403 para o cNAP com o uso de um formato predefinido, o qual é descrito com mais detalhes abaixo.[0075] In step 408, sNAP publishes the proxy rules received at 403 to cNAP using a predefined format, which is described in more detail below.

[0076] Na etapa 409, o cNAP atualiza suas regras de proxy locais para foo.com e pode continuar com suas operações para publicar a solicitação de HTTP para o sNAP, conforme descrito abaixo. Isso completa as operações em cNAPs e sNAPs nessa modalidade exemplificadora para recuperar regras de proxy genéricas e específicas de FQDN.[0076] In step 409, cNAP updates its local proxy rules for foo.com and can continue its operations to publish the HTTP request to sNAP, as described below. This completes the operations on cNAPs and sNAPs in this example embodiment to retrieve generic and FQDN-specific proxy rules.

Preenchimento de regras de proxy para eNAPs.Populating proxy rules for eNAPs.

[0077] Os NAPs que possibilitam uma cópia autorizada de um servidor web primário em um local diferente dentro da rede ICN (por exemplo, substitutos) são chamados de NAPs estendidos (eNAPs). Um gráfico de sequência de mensagem para uma modalidade dos procedimentos para que os eNAPs obtenham regras de proxy para o FQDN (os FQDNs) que supostamente devem servir é representado na Figura 5. Esta ilustração mostra três elementos de rede, a saber, um eNAP 430, um PCE 426 e o NAP primário (sNAP) 428 que serve o FQDN foo.com.[0077] NAPs that enable an authorized copy of a primary web server in a different location within the ICN network (e.g., surrogates) are called extended NAPs (eNAPs). A message sequence graph for one embodiment of the procedures for eNAPs to obtain proxy rules for the FQDN (the FQDNs) they are supposed to serve is depicted in Figure 5. This illustration shows three network elements, namely, an eNAP 430 , a PCE 426, and the primary NAP (sNAP) 428 serving the foo.com FQDN.

[0078] Na etapa 501, um elemento externo dispara a ativação de um ponto de extremidade de IP específico como um substituto no eNAP 430. Este comando de ativação para o eNAP compreende, entre outros dados, o FQDN que o eNAP deverá servir. A operação de tal ativação e outra funcionalidade de eNAP podem ser implementadas conforme descrito com mais detalhes no pedido provisório n° 62/309.610.[0078] In step 501, an external element triggers the activation of a specific IP endpoint as a surrogate in the eNAP 430. This activation command for the eNAP comprises, among other data, the FQDN that the eNAP is to serve. The operation of such activation and other eNAP functionality may be implemented as described in more detail in provisional application No. 62/309,610.

[0079] Na etapa 502, seguindo o mesmo procedimento geral para cNAPs, o eNAP subscreve ao CID/management/proxyRules/foo.com para receber as regras de proxy do sNAP primário.[0079] In step 502, following the same general procedure for cNAPs, the eNAP subscribes to CID/management/proxyRules/foo.com to receive the proxy rules from the primary sNAP.

[0080] Na etapa 503, o PCE informa ao sNAP que um novo subscritor se tornou disponível sob/management/proxyRules/foo.com. Nota: após o procedimento descrito acima em relação à Figura 3, o eNAP foi subscrito ao CID anteriormente mencionado para acionar uma correspondência de publicação/subscrição no PCE.[0080] In step 503, PCE informs sNAP that a new subscriber has become available under /management/proxyRules/foo.com. Note: Following the procedure described above in relation to Figure 3, the eNAP was subscribed to the previously mentioned CID to trigger a publish/subscribe match in the PCE.

[0081] Na etapa 504, o sNAP publica as regras de proxy para o eNAP usando um formato predefinido, um exemplo do qual é descrito abaixo.[0081] In step 504, the sNAP publishes the proxy rules to the eNAP using a predefined format, an example of which is described below.

[0082] Na etapa 505, o eNAP atualiza suas regras de proxy para foo.com, o que possibilita que grupos de difusão seletiva coincidentes se formem sem comprometer a integridade do conteúdo HTTP fornecido.[0082] In step 505, eNAP updates its proxy rules for foo.com, which allows coinciding multicast groups to form without compromising the integrity of the HTTP content provided.

[0083] Na etapa 506, o eNAP se subscreve ao item de informações foo.com sob o identificador de espaço de nomes de raiz /http, possibilitando que somente os clientes IP solicitem recursos da web. Esta etapa pode ser realizada com o uso de técnicas descritas no documento n° WO2016123516A1. Isso completa a recuperação de regras de proxy específicas de FQDN de um eNAP em uma modalidade de uma ativação substituta nessa modalidade exemplificadora. Conforme observado acima, o espaço de nomes também pode utilizar itens de regra de proxy dedicados sob cada FQDN para a propagação inicial e atualizada pela interpretação do FQDN como um escopo e a adição de /initial e /update de itens de informações em cada escopo de FQDN, acomodando, assim, sistemas de publicação/subscrição que não notificam a adição de assinantes separadamente ao editor.[0083] In step 506, eNAP subscribes to the information item foo.com under the root namespace identifier /http, enabling only IP clients to request web resources. This step can be carried out using techniques described in document No. WO2016123516A1. This completes the retrieval of FQDN-specific proxy rules from an eNAP in one embodiment of a surrogate activation in that exemplary embodiment. As noted above, the namespace can also utilize dedicated proxy rule items under each FQDN for initial and updated propagation by interpreting the FQDN as a scope and adding /initial and /update information items in each namespace scope. FQDN, thus accommodating publish/subscribe systems that do not notify the addition of subscribers separately to the publisher.

Atualização de operações em todos os NAPs.Update of operations in all NAPs.

[0084] Em uma modalidade, ilustrada na Figura 6, um sNAP recebe uma atualização das regras de proxy específicas de FQDN e as informações são encaminhadas a todos os NAPs que recuperaram essas regras para o FQDN específico antes. No final da recuperação inicial das regras de proxy específicas de FQDN, os cNAPs e os eNAPs permanecem subscritos ao CID /management/proxyRules/foo.com, conforme descrito acima. Portanto, o sNAP não precisa mais anunciar a disponibilidade de informações sob /management/proxyRules/foo.com para ser capaz de publicar dados para todos os assinantes.[0084] In one embodiment, illustrated in Figure 6, an sNAP receives an update of FQDN-specific proxy rules and the information is forwarded to all NAPs that have retrieved these rules for the specific FQDN before. At the end of the initial retrieval of FQDN-specific proxy rules, cNAPs and eNAPs remain subscribed to the /management/proxyRules/foo.com CID as described above. Therefore, sNAP no longer needs to advertise the availability of information under /management/proxyRules/foo.com to be able to publish data to all subscribers.

[0085] Na etapa 601, o sNAP recebe uma atualização das regras de proxy para um FQDN foo.com específico. O formato das regras pode ser idêntico à recuperação inicial das regras.[0085] In step 601, sNAP receives an update of the proxy rules for a specific foo.com FQDN. The format of the rules can be identical to the initial retrieval of the rules.

[0086] Na etapa 602, o sNAP publica as regras de proxy específicas de FQDN recebidas para todos os NAPs inscritos ao mesmo, por exemplo, cNAP 424 e eNAP 430, com o uso de CID/management/proxyRules/foo.com.[0086] In step 602, the sNAP publishes the received FQDN-specific proxy rules to all NAPs subscribed to it, for example, cNAP 424 and eNAP 430, using CID/management/proxyRules/foo.com.

[0087] Conforme observado acima, um item de informações de atualização separado pode ser alternativamente usado. Nesse caso, o cNAP e o eNAP podem se subscrever a esse item de atualização dedicado após receber a regra de proxy inicial, conforme descrito anteriormente.[0087] As noted above, a separate update information item may alternatively be used. In this case, cNAP and eNAP can subscribe to this dedicated update item after receiving the initial proxy rule as described previously.

[0088] Isto completa a troca de mensagens nesta modalidade exemplificadora entre sNAP e NAPs de cliente e estendidos para se obter regras de proxy específicas de FQDN atualizadas.[0088] This completes the exchange of messages in this exemplary embodiment between sNAP and client NAPs and extended to obtain updated FQDN-specific proxy rules.

Formato de regras de proxy exemplificador.Sample proxy rules format.

[0089] Para descrever as regras de proxy, uma modalidade para armazenar e trocar as regras de proxy genéricas e específicas de FQDN é XML seguindo as especificações de DOM para de W3C para esse formato de arquivo específico. Formatos alternativos que possibilitam informações estruturadas podem ser usados em algumas modalidades. O XML é um exemplo que é amplamente usado e suportado. Outras soluções incluem bases de dados relacionais, por exemplo, SQL.[0089] To describe proxy rules, one embodiment for storing and exchanging generic and FQDN-specific proxy rules is XML following the W3C DOM specifications for that specific file format. Alternative formats that enable structured information may be used in some embodiments. XML is an example that is widely used and supported. Other solutions include relational databases, for example SQL.

[0090] As regras de proxy atuam sobre a existência de campos de cabeçalho na solicitação de HTTP e seus valores. Campos de cabeçalho que são obrigatórios para assegurar a liberação da resposta de HTTP correta são fornecidos dentro de um elemento de regra encapsulado no elemento de marcação genérico, por exemplo, no seguinte formato.[0090] Proxy rules act on the existence of header fields in the HTTP request and their values. Header fields that are mandatory to ensure the correct HTTP response is released are provided within a rule element encapsulated in the generic markup element, for example in the following format.

[0091] <generic> <rule>Range</rule> <rule>HTTP</rule> </generic>[0091] <generic> <rule>Range</rule> <rule>HTTP</rule> </generic>

[0092] As regras de proxy específicas de FQDN podem ser declaradas em um elemento fqdn com o FQDN real como o id do atributo. Dentro do elemento fqdn, os dois elementos host e headerfields podem ser apresentados. Dentro de headerfields, pode existir um elemento name, e se o valor do campo do cabeçalho não deve ser usado em toda a ocorrência como regra de proxy, um elemento value possibilita que o valor seja usado somente com valores predefinidos. Além disso, deve ser observado que cada entrada <name> é opcional na regra com vários casos sendo possíveis utilizando-se apenas vários headerfields opcionais (vide exemplo introdutório nas solicitações parciais). Uma modalidade específica do formato pode ser, mas não se limita ao seguinte.[0092] FQDN-specific proxy rules can be declared in an fqdn element with the actual FQDN as the attribute id. Within the fqdn element, both host and headerfields elements can be presented. Within headerfields, there can be a name element, and if the value of the header field is not to be used in every occurrence as a proxy rule, a value element allows the value to be used only with predefined values. Furthermore, it should be noted that each <name> entry is optional in the rule with several cases being possible using only several optional headerfields (see introductory example in partial requests). A specific embodiment of the format may be, but is not limited to, the following.

[0093] <fqdn id="foo.com"> <host>foo.com</host> <headerfields> <name>User-Agent</name> <value>Mozilla</value> </headerfields> </fqdn>[0093] <fqdn id="foo.com"> <host>foo.com</host> <headerfields> <name>User-Agent</name> <value>Mozilla</value> </headerfields> </ fqdn>

[0094] Tanto os elementos específicos de FQDN como os elemento genéricos não se limitam ao seu número de ocorrências, e se uma regra não for encontrada no cabeçalho HTTP, ela pode ser ignorada.[0094] Both FQDN-specific elements and generic elements are not limited to their number of occurrences, and if a rule is not found in the HTTP header, it can be ignored.

Operando em regras de proxy.Operating on proxy rules.

[0095] O uso das regras de proxy possibilita que vários clientes de HTTP idênticos sejam servidos pelo mesmo cNAP que solicita o mesmo conteúdo, enquanto se mantém a integridade. A Figura 7 mostra uma modalidade de uma sequência de mensagens exemplificadora entre um cliente 422 conectado a um cNAP 424 e um servidor web 432 conectado a um sNAP 428, durante uma sequência de solicitação/resposta de HTTP. Presume-se que as regras de proxy tenham sido preenchidas de acordo com os métodos acima e que a rede ICN esteja totalmente operacional. Além disso, a comunicação de PCE usada para habilitar as correspondências de publicação/inscrição de HTTP não é mostrada na Figura 7.[0095] The use of proxy rules allows multiple identical HTTP clients to be served by the same cNAP requesting the same content, while maintaining integrity. Figure 7 shows one embodiment of an exemplary message sequence between a client 422 connected to a cNAP 424 and a web server 432 connected to a sNAP 428, during an HTTP request/response sequence. It is assumed that the proxy rules have been populated according to the above methods and that the ICN network is fully operational. Additionally, the PCE communication used to enable HTTP publish/subscribe correspondences is not shown in Figure 7.

[0096] Na etapa 701, o cliente IP 422 servido pelo cNAP 424 está emitindo uma solicitação de HTTP para recuperar http://foo.com/resource.[0096] In step 701, the IP client 422 served by the cNAP 424 is issuing an HTTP request to retrieve http://foo.com/resource.

[0097] Na etapa 702, o cNAP analisa o cabeçalho HTTP e aplica as regras de proxy genéricas e específicas de FQDN antes dessa ação para gerar o identificador de regra de proxy (PRID). Um PRID é uma impressão digital para a combinação de regras de proxy e seus valores. Em uma modalidade, um PRID pode ser concebido como uma concatenação de todos os campos de cabeçalho e seus valores que são fornecidos como uma cadeia para uma função hash. À medida que o PRID faz parte do pacote que é enviado para outro NAP, qualquer formato que pode ser "codificado" como um fluxo exclusivo de campos de bits pode ser usado.[0097] In step 702, cNAP parses the HTTP header and applies the generic and FQDN-specific proxy rules prior to this action to generate the proxy rule identifier (PRID). A PRID is a fingerprint for the combination of proxy rules and their values. In one embodiment, a PRID can be conceived as a concatenation of all header fields and their values that are provided as a string to a hash function. As the PRID is part of the packet that is sent to another NAP, any format that can be "encoded" as a unique stream of bit fields can be used.

[0098] Na etapa 703, o cNAP armazena um mapeamento que identifica o cliente solicitante 422 e o CID reverso correspondente (rCID) (/http/url) da solicitação e o PRID da solicitação. O identificador do cliente que espera a resposta pode ser, por exemplo, um endereço de IP juntamente com a porta ou um descritor de arquivo de soquete, ou similar.[0098] In step 703, cNAP stores a mapping that identifies the requesting client 422 and the corresponding reverse CID (rCID) (/http/url) of the request and the PRID of the request. The identifier of the client waiting for the response can be, for example, an IP address together with the port or a socket file descriptor, or similar.

[0099] Na etapa 704, o cNAP publica a solicitação de HTTP usando CID /http/fqdn, /http/url como o rCID, e inclui o PRID na mensagem, de modo que todos os três elementos sejam recebidos pelo sNAP. O cNAP pode incluir também seu ID de nó (NID).[0099] In step 704, cNAP publishes the HTTP request using CID /http/fqdn, /http/url as the rCID, and includes the PRID in the message, so that all three elements are received by sNAP. The cNAP may also include your node ID (NID).

[00100] Na etapa 705, por ocasião da chegada da mensagem, o sNAP adiciona o cNAP (mais precisamente, seu NID) a uma lista de nós que estão aguardando a resposta, como formando um grupo de difusão seletiva coincidente (CMC, de "coincidental multicast"). Esta criação de grupo se baseia em um rCID e em um PRID idênticos.[00100] In step 705, upon arrival of the message, the sNAP adds the cNAP (more precisely, its NID) to a list of nodes that are waiting for the response, as forming a coincident multicast group (CMC, from " coincidental multicast"). This group creation is based on an identical rCID and PRID.

[00101] Na etapa 706, a solicitação de HTTP é enviada para o servidor web 432 associado ao FQDN e ao sNAP.[00101] In step 706, the HTTP request is sent to the web server 432 associated with the FQDN and the sNAP.

[00102] Na etapa 707, o servidor web 432 fornece o recurso de web solicitado por meio de uma resposta de HTTP que é recebida pelo sNAP 428.[00102] In step 707, web server 432 provides the requested web resource via an HTTP response that is received by sNAP 428.

[00103] O sNAP 428 tem informações que indicam a partir de qual grupo CMC a solicitação de HTTP foi enviada. Com o uso dessas informações, na etapa 708, o sNAP publica a resposta de HTTP para todos os NIDs que solicitaram o recurso da web (por exemplo, o grupo CMC) e inclui o PRID novamente. Portanto, pode haver tantas operações de publicação quanto PRIDs diferentes para um determinado rCID.[00103] The sNAP 428 has information indicating from which CMC group the HTTP request was sent. Using this information, in step 708, sNAP publishes the HTTP response to all NIDs that requested the web resource (e.g., the CMC group) and includes the PRID again. Therefore, there can be as many publish operations as there are different PRIDs for a given rCID.

[00104] Na etapa 709, com base no mapeamento armazenado na etapa 703 (rCID, PRID, Clientes), o cNAP 424 identifica o ponto de extremidade ou pontos de extremidade IP (por exemplo, clientes) que esperam essa resposta específica.[00104] In step 709, based on the mapping stored in step 703 (rCID, PRID, Clients), cNAP 424 identifies the IP endpoint or endpoints (e.g., clients) that expect this specific response.

[00105] Na etapa 710, a resposta de HTTP é enviada a todos os clientes com a mesma impressão digital de regras de proxy (PRID) que solicitaram o mesmo recurso do mesmo FQDN.[00105] In step 710, the HTTP response is sent to all clients with the same proxy rule fingerprint (PRID) that requested the same resource from the same FQDN.

[00106] Em algumas modalidades, antes de publicar uma solicitação de HTTP (etapa 704), o cNAP 424 determina se uma solicitação de HTTP para o mesmo FQDN, recurso da web e PRID já foi publicada. Em caso afirmativo, o cNAP 424 pode se recusar a publicar uma solicitação de HTTP duplicada.[00106] In some embodiments, before publishing an HTTP request (step 704), cNAP 424 determines whether an HTTP request for the same FQDN, web resource, and PRID has already been published. If so, cNAP 424 may refuse to publish a duplicate HTTP request.

[00107] Por exemplo, evitar o envio de solicitações de HTTP desnecessárias ao servidor (e, portanto, evitar receber respostas de HTTP desnecessárias do servidor no sNAP) pode ser realizado da seguinte forma. Ao receber uma resposta de HTTP do servidor, depois de enviar anteriormente a solicitação de HTTP adequada, o sNAP verifica o número de subscritores para o nome de ICN adequado para o URL fornecido na resposta de HTTP (por exemplo, contagem de mensagens de solicitação de HTTP de entrada para o mesmo URL, subscrição a informações de metadados de tamanho de grupo em um ponto de encontro, etc.). O sNAP envia a resposta de HTTP, por exemplo, de acordo com os métodos delineados no documento WO2016123516A1. Em algumas modalidades, o sNAP armazena o PRID da dita resposta de HTTP em uma tabela interna, junto com a contagem previamente determinada. (Em algumas modalidades, por exemplo, nas quais o PRID não inclui o URL, o URL e o PRID podem ser armazenados juntos como um par.) O sNAP recebe mensagens de solicitação de HTTP de entrada da rede ICN e realiza uma verificação de se o PRID correspondente equivale a qualquer PRID armazenado em sua tabela interna. Se o PRID não for encontrado, a mensagem de solicitação de HTTP é tratada de acordo com os métodos descritos no documento WO2016123516A1. Se o PRID for encontrado, i) a mensagem de solicitação de HTTP é suprimida, por exemplo, não enviada ao servidor; ii) a contagem na entrada de tabela correspondente é reduzida em 1; iii) se a contagem tiver atingido zero, a entrada da tabela é removida; iv) se a contagem ainda não tiver atingido zero, a contagem modificada é armazenada na entrada de tabela adequada. O método é realizado de modo similar em uma porta de comunicação de borda ICN em cenários em que o servidor reside em uma rede IP de peering. Nesse caso, o termo "servidor" nas etapas acima é substituído pelo termo "rede IP de peering".[00107] For example, avoiding sending unnecessary HTTP requests to the server (and therefore avoiding receiving unnecessary HTTP responses from the server in sNAP) can be accomplished as follows. Upon receiving an HTTP response from the server, after previously sending the appropriate HTTP request, sNAP checks the number of subscribers for the appropriate ICN name for the URL provided in the HTTP response (for example, ICN request message count Inbound HTTP to the same URL, subscribing to group size metadata information at a rendezvous point, etc.). sNAP sends the HTTP response, for example, according to the methods outlined in WO2016123516A1. In some embodiments, sNAP stores the PRID of said HTTP response in an internal table, along with the previously determined count. (In some embodiments, for example, where the PRID does not include the URL, the URL and PRID may be stored together as a pair.) sNAP receives incoming HTTP request messages from the ICN network and performs a check whether the corresponding PRID is equivalent to any PRID stored in its internal table. If the PRID is not found, the HTTP request message is handled according to the methods described in WO2016123516A1. If the PRID is found, i) the HTTP request message is suppressed, i.e. not sent to the server; ii) the count in the corresponding table entry is reduced by 1; iii) if the count has reached zero, the table entry is removed; iv) if the count has not yet reached zero, the modified count is stored in the appropriate table entry. The method is similarly performed on an ICN edge communication port in scenarios where the server resides in an IP peering network. In this case, the term "server" in the steps above is replaced by the term "IP peering network".

[00108] Em modalidades adicionais, os sistemas e métodos revelados podem incorporar um gerente substituto (ou eNAP), conforme revelado no pedido provisório n° 62/309.610, para possibilitar o provisionamento de serviços elásticos mediante a ativação e o gerenciamento inteligentes dos eNAPs substitutos com base nas estatísticas dinâmicas relatadas a partir da rede e dos servidores. Por exemplo, um gerente substituto pode considerar várias métricas, como estado do servidor, estatísticas do servidor, estatísticas de rede etc., e determinar um eNAP ideal ou preferencial, ou o sNAP principal, para responder a uma solicitação de HTTP. Em algumas modalidades, o espaço de nomes pode ser estendido ou, de outro modo, modificado para permitir que um gerenciador substituto determine uma trajetória de escopo a ser publicada para uma solicitação de HTTP ou outra mensagem (por exemplo, operação no nível de publicação/subscrição, em algumas modalidades integradas com o PCE). Consequentemente, o gerenciador substituto e/ou o PCE podem determinar se se deve ou não direcionar uma solicitação específica de um cNAP para um eNAP atualmente "melhor" do que o sNAP primário.[00108] In additional embodiments, the disclosed systems and methods may incorporate a surrogate manager (or eNAP), as disclosed in provisional application No. 62/309,610, to enable provisioning of elastic services through intelligent activation and management of surrogate eNAPs based on dynamic statistics reported from the network and servers. For example, a surrogate manager can consider various metrics such as server state, server statistics, network statistics, etc., and determine an optimal or preferred eNAP, or primary sNAP, for responding to an HTTP request. In some embodiments, the namespace may be extended or otherwise modified to allow a surrogate manager to determine a scope path to be published for an HTTP request or other message (e.g., publish-level operation/ subscription, in some modalities integrated with the PCE). Consequently, the surrogate manager and/or the PCE can determine whether or not to direct a specific request from a cNAP to an eNAP that is currently "better" than the primary sNAP.

[00109] Embora os recursos e elementos sejam descritos acima em combinações específicas, um versado na técnica irá entender que cada recurso ou elemento pode ser usado sozinho ou em qualquer combinação com outros recursos e elementos. Além disso, os métodos da presente invenção descritos aqui podem ser implementados em um programa de computador, software ou firmware incorporados em uma mídia legível por computador para execução por um computador ou processador. Exemplos de mídias de armazenamento legíveis por computador incluem, mas não se limitam a, memórias de apenas leitura (ROM), memórias de acesso aleatório (RAM), registradores, memórias cache, dispositivos de memória semicondutores, mídia magnética, como discos rígidos internos e discos removíveis, mídias magneto-ópticas e mídias ópticas, como discos CD-ROM e/ou discos versáteis digitais (DVDs). Um processador em associação com um software pode ser usado para implementar um transceptor de radiofrequência para uso em uma WTRU, UE, terminal, estação- base, RNC e/ou qualquer computador hospedeiro.[00109] Although the features and elements are described above in specific combinations, one skilled in the art will understand that each feature or element can be used alone or in any combination with other features and elements. Furthermore, the methods of the present invention described herein may be implemented in a computer program, software, or firmware embodied in a computer-readable medium for execution by a computer or processor. Examples of computer-readable storage media include, but are not limited to, read-only memories (ROM), random access memories (RAM), registers, cache memories, semiconductor memory devices, magnetic media such as internal hard drives, and removable disks, magneto-optical media, and optical media such as CD-ROM disks and/or digital versatile discs (DVDs). A processor in association with software can be used to implement a radio frequency transceiver for use in a WTRU, UE, terminal, base station, RNC and/or any host computer.

Claims (20)

1. Método realizado por um ponto de conexão de rede de lado de cliente (cNAP) em uma rede centrada em informações (ICN), sendo que o método é caracterizado pelo fato de que compreende: receber de um cliente uma solicitação de HTTP, sendo que a solicitação de HTTP está associada a um nome de domínio totalmente qualificado (FQDN) de um hospedeiro, e sendo que a solicitação de HTTP inclui um localizador de recurso uniforme (URL) e pelo menos um campo de cabeçalho; gerar (i) um identificador de regra de proxy de solicitação (PRID) com base no pelo menos um campo de cabeçalho, (ii) um identificador de conteúdo de solicitação (CID) com base no FQDN e (iii) um identificador de conteúdo reverso de solicitação (rCID) com base no URL; enviar uma mensagem de ICN de saída solicitando dados, sendo que a mensagem de ICN de saída compreende o CID de solicitação, o PRID de solicitação e a solicitação de HTTP; em resposta à mensagem de ICN de saída, receber uma mensagem de ICN de entrada que compreende uma resposta de HTTP, um PRID recebido e um rCID recebido; e em resposta a uma determinação de que o rCID recebido e o PRID recebido são iguais ao rCID de solicitação e ao PRID de solicitação, respectivamente, fornecer a resposta de HTTP para o cliente.1. Method performed by a client-side network connection point (cNAP) in an information-centric network (ICN), the method being characterized by the fact that it comprises: receiving an HTTP request from a client, being that the HTTP request is associated with a fully qualified domain name (FQDN) of a host, and that the HTTP request includes a uniform resource locator (URL) and at least one header field; generate (i) a request proxy rule identifier (PRID) based on at least one header field, (ii) a request content identifier (CID) based on the FQDN, and (iii) a reverse content identifier request code (rCID) based on URL; sending an outgoing ICN message requesting data, wherein the outgoing ICN message comprises the request CID, the request PRID and the HTTP request; in response to the outgoing ICN message, receiving an incoming ICN message comprising an HTTP response, a received PRID and a received rCID; and in response to a determination that the received rCID and the received PRID are equal to the requesting rCID and the requesting PRID, respectively, providing the HTTP response to the client. 2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a geração do PRID de solicitação compreende: identificar uma regra de proxy específica do FQDN correspondente ao FQDN; e gerar o PRID de solicitação de acordo com a regra de proxy específica de FQDN identificada.2. Method, according to claim 1, characterized by the fact that generating the request PRID comprises: identifying an FQDN-specific proxy rule corresponding to the FQDN; and generate the request PRID according to the identified FQDN specific proxy rule. 3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que compreende, adicionalmente, a subscrição em um espaço de nomes de gerenciamento dedicado para receber regras de proxy específicas de FQDN associadas ao FQDN.3. The method of claim 2, further comprising subscribing to a dedicated management namespace to receive FQDN-specific proxy rules associated with the FQDN. 4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a subscrição para receber as regras de proxy específicas de FQDN associadas ao FQDN é realizada em resposta a uma determinação de que o cNAP ainda não recebeu as regras de proxy específicas de FQDN associadas ao FQDN.4. The method of claim 3, wherein the subscription to receive the FQDN-specific proxy rules associated with the FQDN is performed in response to a determination that the cNAP has not yet received the FQDN-specific proxy rules. FQDN associated with the FQDN. 5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o PRID de solicitação é gerado com o uso de pelo menos uma regra de proxy genérica.5. Method according to claim 1, characterized by the fact that the request PRID is generated using at least one generic proxy rule. 6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a geração do PRID de solicitação compreende: gerar uma cadeia de caracteres que compreende o pelo menos um campo de cabeçalho; e aplicar uma função hash à cadeia de caracteres.6. Method, according to claim 1, characterized by the fact that generating the request PRID comprises: generating a string comprising the at least one header field; and apply a hash function to the string. 7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que a geração da cadeia de caracteres compreende dispor atributos e valores do pelo menos um campo de cabeçalho em uma estrutura XML.7. Method, according to claim 6, characterized by the fact that generating the character string comprises arranging attributes and values of at least one header field in an XML structure. 8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a mensagem de ICN de saída é uma mensagem de publicação.8. The method of claim 1, wherein the output ICN message is a publication message. 9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende, adicionalmente, armazenar um mapeamento entre (i) um identificador do cliente e (ii) o rCID de solicitação e o PRID de solicitação; sendo que a determinação de que o PRID recebido é igual ao PRID de solicitação e o rCID recebido é igual ao rCID de solicitação é feita com o uso do mapeamento armazenado.9. Method, according to claim 1, characterized by the fact that it further comprises storing a mapping between (i) a client identifier and (ii) the request rCID and the request PRID; whereby the determination that the received PRID is equal to the request PRID and the received rCID is equal to the request rCID is made using the stored mapping. 10. Método, de acordo com a reivindicação 9, caracterizado pelo fato de que o identificador do cliente compreende um endereço de protocolo de internet (IP).10. Method according to claim 9, characterized by the fact that the customer identifier comprises an internet protocol (IP) address. 11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o cNAP recebe, de uma pluralidade de clientes, uma pluralidade de solicitações de HTTP a partir das quais um mesmo PRID de solicitação, um mesmo CID de solicitação e um mesmo rCID são gerados, e sendo que o cNAP envia uma única mensagem de ICN de saída para a pluralidade de solicitações de HTTP a partir das quais o mesmo PRID de solicitação e o mesmo CID de solicitação são gerados.11. Method according to claim 1, characterized by the fact that the cNAP receives, from a plurality of clients, a plurality of HTTP requests from which a same request PRID, a same request CID and a same rCID are generated, and cNAP sends a single outgoing ICN message to the plurality of HTTP requests from which the same request PRID and the same request CID are generated. 12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o cliente é um cliente de protocolo de internet (IP).12. Method according to claim 1, characterized by the fact that the client is an internet protocol (IP) client. 13. Método de acordo com a reivindicação 1, caracterizado pelo fato de que a mensagem de ICN de saída compreende ainda um identificador de nó do cNAP.13. The method of claim 1, wherein the output ICN message further comprises a cNAP node identifier. 14. Ponto de conexão de rede do cliente (cNAP) sobre uma rede centrada em informações (ICN), sendo que o cNAP é caracterizado pelo fato de que compreende um processador e um meio de armazenamento por computador não transitório que armazena instruções operacionais para realizar funções que compreendem: receber de um cliente uma solicitação de HTTP, sendo que a solicitação de HTTP está associada a um nome de domínio totalmente qualificado (FQDN) de um hospedeiro, e sendo que a solicitação de HTTP inclui um localizador de recurso uniforme (URL) e pelo menos um campo de cabeçalho; gerar (i) um identificador de regra de proxy de solicitação (PRID) com base no pelo menos um campo de cabeçalho, (ii) um identificador de conteúdo de solicitação (CID) com base no FQDN e (iii) um identificador de conteúdo reverso de solicitação (rCID) com base no URL; enviar uma mensagem de ICN de saída solicitando dados, sendo que a mensagem de ICN de saída compreende o CID de solicitação, o PRID de solicitação e a solicitação de HTTP; em resposta à mensagem de ICN de saída, receber uma mensagem de ICN de entrada que compreende uma resposta de HTTP, um PRID recebido e um rCID recebido; e em resposta a uma determinação de que o rCID recebido e o PRID recebido são iguais ao rCID de solicitação e ao PRID de solicitação, respectivamente, fornecer a resposta de HTTP para o cliente.14. Customer Network Attachment Point (cNAP) over an Information Centric Network (ICN), wherein the cNAP is characterized by the fact that it comprises a processor and a non-transitory computer storage medium that stores operational instructions to perform functions comprising: receiving an HTTP request from a client, wherein the HTTP request is associated with a host's fully qualified domain name (FQDN), and wherein the HTTP request includes a uniform resource locator (URL ) and at least one header field; generate (i) a request proxy rule identifier (PRID) based on at least one header field, (ii) a request content identifier (CID) based on the FQDN, and (iii) a reverse content identifier request code (rCID) based on URL; sending an outgoing ICN message requesting data, wherein the outgoing ICN message comprises the request CID, the request PRID and the HTTP request; in response to the outgoing ICN message, receiving an incoming ICN message comprising an HTTP response, a received PRID and a received rCID; and in response to a determination that the received rCID and the received PRID are equal to the requesting rCID and the requesting PRID, respectively, providing the HTTP response to the client. 15. Ponto de conexão de rede do cliente de acordo com a reivindicação 14, caracterizado pelo fato de que a mensagem de ICN de saída ainda compreende um identificador de nó do cNAP.15. The client network connection point of claim 14, wherein the outgoing ICN message further comprises a cNAP node identifier. 16. Ponto de conexão de rede do cliente de acordo com a reivindicação 14, caracterizado pelo fato de que gerar o PRID de solicitação compreende: identificar uma regra de proxy específica do FQDN correspondente ao FQDN; e gerar o PRID de solicitação de acordo com a regra de proxy específica de FQDN identificada.16. The client network connection point of claim 14, wherein generating the request PRID comprises: identifying an FQDN-specific proxy rule corresponding to the FQDN; and generate the request PRID according to the identified FQDN specific proxy rule. 17. Ponto de conexão de rede do cliente de acordo com a reivindicação 14, caracterizado pelo fato de que gerar o PRID de solicitação compreende: gerar uma cadeia de caracteres que compreende o pelo menos um campo de cabeçalho; e aplicar uma função hash à cadeia de caracteres.17. The client network connection point of claim 14, wherein generating the request PRID comprises: generating a string comprising the at least one header field; and apply a hash function to the string. 18. Ponto de conexão de rede do cliente de acordo com a reivindicação 14, caracterizado pelo fato de que as funções compreendem ainda receber, a partir de uma pluralidade de clientes, uma pluralidade de solicitações HTTP a partir das quais um mesmo PRID de solicitação, um mesmo CID de solicitação e um mesmo rCID são gerados, e em que o cNAP envia uma única mensagem de ICN de saída para a pluralidade de solicitações de HTTP a partir das quais uma mesmo PRID de solicitação e um mesmo CID de solicitação são gerados.18. Client network connection point according to claim 14, characterized in that the functions further comprise receiving, from a plurality of clients, a plurality of HTTP requests from which a same request PRID, a single request CID and a single rCID are generated, and wherein cNAP sends a single outgoing ICN message to the plurality of HTTP requests from which a single request PRID and a single request CID are generated. 19. Método realizado por um ponto de conexão de rede de lado de servidor (sNAP) em uma rede centrada em informações (ICN), o método caracterizado pelo fato de que compreende: receber uma mensagem incluindo um identificador de nó (NID), um identificador de conteúdo (CID), um identificador de regra de proxy (PRID), e uma solicitação de HTTP, em que a solicitação HTTP inclui um localizador de recurso uniforme (URL) e pelo menos um campo de cabeçalho, o PRID sendo com base no pelo menos um campo de cabeçalho; comunicar a solicitação HTTP a um servidor de rede associada com o CID; receber uma resposta HTTP a partir do servidor de rede, em que a resposta HTTP inclui um recurso solicitado na solicitação de HTTP; e publicar a resposta HTTP ao NID usando uma mensagem que inclui o PRID e um identificador de conteúdo reverso (rCID) com base no URL.19. A method performed by a server-side network connection point (sNAP) in an information-centric network (ICN), the method characterized by the fact that it comprises: receiving a message including a node identifier (NID), a content identifier (CID), a proxy rule identifier (PRID), and an HTTP request, wherein the HTTP request includes a uniform resource locator (URL) and at least one header field, the PRID being based at least one header field; communicating the HTTP request to a network server associated with the CID; receiving an HTTP response from the web server, wherein the HTTP response includes a resource requested in the HTTP request; and publishing the HTTP response to the NID using a message that includes the PRID and a reverse content identifier (rCID) based on the URL. 20. Método de acordo com a reivindicação 19, caracterizado pelo fato de que compreende adicionar o NID a um grupo de multidifusão coincidente (CMC) associado com o PRID e o rCID, em que publicar a resposta HTTP ao NID compreende publicar a resposta HTTP a uma pluralidade de NIDs no grupo CMC.20. The method of claim 19, wherein it comprises adding the NID to a coincident multicast group (CMC) associated with the PRID and the rCID, wherein publishing the HTTP response to the NID comprises publishing the HTTP response to a plurality of NIDs in the CMC group.
BR112018077485-5A 2016-07-01 2017-06-30 METHOD PERFORMED BY A CLIENT-SIDE NETWORK CONNECTION POINT, AND CLIENT-SIDE NETWORK CONNECTION POINT BR112018077485B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662357868P 2016-07-01 2016-07-01
US62/357,868 2016-07-01
PCT/US2017/040432 WO2018006042A1 (en) 2016-07-01 2017-06-30 Enabling http content integrity for co-incidental multicast delivery in information-centric networks

Publications (2)

Publication Number Publication Date
BR112018077485A2 BR112018077485A2 (en) 2019-04-02
BR112018077485B1 true BR112018077485B1 (en) 2024-04-24

Family

ID=

Similar Documents

Publication Publication Date Title
EP3251326B1 (en) Methods and systems for anchoring hypertext transfer protocol (http) level services in an information centric network (icn)
US11190446B2 (en) Anchoring IP devices in ICN networks
US11234213B2 (en) Machine-to-machine (M2M) interface procedures for announce and de-announce of resources
US10812280B2 (en) Enabling HTTP content integrity for co-incidental multicast delivery in information-centric networks
US9838473B2 (en) Methods and systems for integration of peer-to-peer (P2P) networks with content delivery networks (CDNS)
JP5833765B2 (en) Method and apparatus for realizing interfacing between content networks
US20140173034A1 (en) Content identification, retrieval and routing in the internet
US10772036B2 (en) Procedures for dynamically configured network coding based multi-source packet transmission utilizing ICN
BR112019011784A2 (en) method, and server-side network connection point.
EP3387790B1 (en) Anchoring internet protocol multicast services in information centric networks
WO2017004508A1 (en) Reducing the end to end latency in an http-over-icn scenario
WO2017070545A1 (en) Software-defined network enhancements enabling programmable information centric networking in edge networks
WO2016201411A1 (en) Reducing the http server load in an http-over-icn scenario
BR112018077485B1 (en) METHOD PERFORMED BY A CLIENT-SIDE NETWORK CONNECTION POINT, AND CLIENT-SIDE NETWORK CONNECTION POINT