Exploring The Tussle Space For Information-Centric Networking

1y ago
10 Views
2 Downloads
1.14 MB
17 Pages
Last View : 12d ago
Last Download : 3m ago
Upload by : Luis Waller
Transcription

Exploring the Tussle Space For Information-CentricNetworkingDirk TrossenAlexandros KostopoulosComputer LaboratoryDepartment of InformaticsUniversity of CambridgeAthens University of Economics and BusinessCambridge, UKAthens, STRACTIn a global communication system like the Internet, conflictsbetween different adversaries are inevitable. Such conflicts can bedriven by economic as well as political interests but also by thedesire of individuals to express themselves in the many forms thatthe Internet provides. It has long been recognized that the natureof these conflicts (or tussles) has a direct impact on the viability ofvarious designs in general and many design decisions inparticular. Such recognition plays an important part not only intoday’s Internet but even more so in any effort that aims atdesigning a future of the Internet. One such example effort is thatof information-centric networking. In this paper, we look atparticular aspects of such future from the viewpoint of conflictsbetween various parties that might unfold. We investigate howsuch information-centric Internet can improve on addressing suchconflicts through an increased modularity of functions. Wefurthermore outline a first attempt for a methodology that helps usbetter understand certain design aspects that arise in suchinvestigations. We present our work along a set of use cases,directly inspired by a tussle taxonomy that we lay out early on.KeywordsTussles, information-centric networking, system dynamicsmodeling, content delivery networks1. INTRODUCTIONThere has been an increasing interest to re-design the IPlayer of the Internet. A particular branch of efforts, such asNDN [1], PURSUIT [2], and others, declares information afirst class citizen at the networking level, building transientrelationships between providers and consumers ofinformation at any point in time. We group these efforts asinformation-centric networking in the following.Core to these proposals is the recognition that the WHATwithin a communication relation is more important thanWHO is communicating. Supported by technologicaldevelopments in computing and storage resources, theseefforts recognize that the WHAT of a communicationscenario is likely to exist in many more places than theoriginally addressed WHO. But we can go even furtherbeyond this observation, by creating a link betweeninformation dissemination and realizing distributedcomputational tasks. We argue that available storage andcomputing resources within a distributed environment areutilized towards implementing such tasks. Hence, itbecomes the role of an information-centric network tofacilitate the dissemination of any information pertaining tothe tasks, while optimizing the particular implementation ofthis facilitation within the realm in which the information isdisseminated. This makes sub-architecture optimization acrucial aspect of information-centric networking, an issuethat will be important in the work presented in this paper.But any such radical change of the design, the providedabstractions and the resulting implementations at this corelayer of the current Internet require a careful thinking as towhat the potential benefits might possibly be. The authorsin [3] formulate a set of desirable architectural claims thatwould motivate such fundamental change of today’sInternet. It is not within the scope of this paper to revisit allof the presented claims made. Instead, we focus on oneclaim that stands out, namely that of improving thedelineation of tussles along well-defined boundaries withinthe resulting architecture. This claim is based onobservations made in [4], where tussles are defined asconflicts among stakeholders in their interests ofimplementing a particular function at hand. As suggested in[4], proper modularization along crucial lines of delineationwithin the overall architecture is essential in ensuringviability and adjustability of the architecture to varyingsocio-economic conditions. It is this improved ability toadjust to changes that is the essence of the tussle claim ininformation-centric networking.However, the authors in [3] only provide a high-level viewas to why such improvement is likely. They argue that theseparation of functions for identifying information, findingit, and finally delivering it along a suitable delivery graphwithin an information-centric architecture is at the heart ofthis claim. Furthermore, the authors assert that the focus oninformation allows for establishing information boundaries,and therefore effectively information asymmetries, moreflexibly given the exposure of information in a different,more consistent way throughout the architecture. But thelack of a deeper analysis weakens the overall message thatis made here: an information-centric networkingarchitecture improves the ability to accommodate variousconstellations of stakeholder interests.Our work in this paper intends to provide some insight intothis claim being made. For this, we utilize an approach thatis driven by dedicated use cases. For each of these usecases, we outline the possible conflicts between majorplayers as they exist in an IP-centric world and how theseElectronic copy available at: http://ssrn.com/abstract 1979924

conflicts could play out in an information-centricalternative. We believe that this comparative approach thatis based on concrete examples will aid the development ofa general methodology for tussle space analysis in anarchitectural context. In this paper, we will sketch suchmethodology based on a system dynamics approach. Wewill also exemplify the methodology with a crucial functionof our architecture, the finding of information.Before delving into the use cases, we first provide thearchitectural backdrop of information-centric networking inSection 2. We then classify various conflicts in such systemthrough a tussle taxonomy in Section 3. This taxonomy willhelp us better understand the specific use cases in Section 4and 5, each of which has a specific focus within thearchitectural context of information-centric networking.This leads us to our attempt to formulate a methodology tobetter understand the tussles we encounter in Section 6,exemplified with another use case in Section 7. We end ourdiscussion with general architectural lessons learned fromour work in Session 8, before concluding our paper.control to implement, e.g., access control and usagepolicies. Each information item may reside in more thanone scope. Treating a set of items as an information itemitself, this allows for grouping scopes in other scopes aswell. With this, the network directly operates on a (directedacyclic) graph of information with operations to manipulatethese graphs. These operations follow a publish-subscribemodel. In other words, information is published by anyprovider, while it is subscribed to by anybody who isinterested in it. A dedicated matching process ensures thatdata exchange only occurs when a match in informationitem and scope has been made.This intuitive introduction into information-centricnetworking highlights a very important aspect of changingto this paradigm of internetworking, namely the change ofabstractions that are visible to applications and networknodes alike. These abstractions move from links, socketsand endpoints to information graphs with operations tomanipulate these through a pub/sub model rather than apush-like send/receive model.2. ARCHITECTURAL CONTEXT2.1 Conceptual High-level ArchitectureInformation-centric networking has been touted as areplacement to the traditional endpoint-centric IPnetworking approach of the current Internet. In order toenable an understanding of the tussle work that isintroduced in the later sections, we first provide a briefintroduction into this new architectural context thatinformation-centric networking provides. Most of ourpresentation here is based on an overview given in [3],taking the liberty to omit many of the details necessary tounderstand the full workings of the various proposedapproach but also extending in parts to better understandcertain aspects that will follow in our tussle analysis.This change in abstractions being exposed to applicationand network developers alike, the conceptual architecturechanges in significant parts. In order to implement theabstractions outlined above, the architecture provides therequired mapping of the underlying concepts onto concreteforwarding relations between endpoints, which areproducing and consuming information. While this keeps thenetwork architecture simple (and allows for separatelyoptimizing the realization of parts of the network), itenables a growing complexity of application-levelproblems to be implemented on top of this simple model.The intuitive starting point is that all network operationsshall be based on information being the primary namedentity across all layers. We assert that this aids theconsistency of concepts across the layers and enablesefficiency gains in operating over a single concept, namelythat of information, across all layers. We assume that eachpiece of information has a statistically unique name andthat applications can request the network to deliver namedinformation. Hence, the primary function of the network isto find an appropriate location for an information providerand deliver information rather than. In other words, thenetwork emphasizes the WHAT of a communicationscenario, while building transient relations between theWHO might have and want the information at hand. This issignificantly different to IP, which places the emphasis onthe exchange of opaque bits between specifically identifiedendpoints, i.e., it helps to locate hosts and arrangescommunications between them.In order to make the vast amount of informationmanageable, we introduce a concept called scope as a wayto group related data together. From the network’sperspective, a scope denotes the party being responsible forlocating a copy of the data. With that, it creates a point ofFigure 1 presents the main architectural components on avery high level. The pub and sub components at theapplication level implement applications based on basicpublish-subscribe network services, enabling publicationsand subscriptions towards information items withinparticular scopes. Transactional services, operating inrequest-reply mode, can easily be supported through apublish-subscribe model, with the server subscribing toreceive requests over identifiers being created for thatpurpose by the application. The relation of such new APIwith traditional middleware layers is that it conflates lowlevel information discovery as well as locationdetermination of publishers and subscribers into a singlenetwork service. This is likely to have an impact onmiddleware developments, an issue left out of thediscussions in this paper.The network architecture itself consists of three mainfunctions, rendezvous, topology and forwarding. Generally,the rendezvous function implements the matching betweenpublishers and subscribers of information. The matching isrealized for a particular part of the overall informationgraph that is constructed by the application. The matchingis performed by at least one rendezvous point which isdirectly associated to the identifier of the scope that itElectronic copy available at: http://ssrn.com/abstract 1979924

performs the matching over. In other words, rendezvouspoints match the semantic-free information items within thescope they are serving. With more than one rendezvouspoint possible to exist for a scope, requests to informationitems within that scope can be routed either to all or to the'best' rendezvous point, using anycast-like functionality.Furthermore, rendezvous points implement policiesassociated with the matching, such as access control.Figure 1: Conceptual ArchitectureUpon having matched a publication and one or moresubscriptions, an inter-domain forwarding graph is createdin negotiation with the inter-domain topology formation(ITF) function. This is based on some form of location forthe publisher and subscriber on the level of autonomoussystems (ASes). Furthermore, any applicable policies aswell as peering and transit relationships among ASes areincluded into the operation. This is similar to BGP, but theunderlying networks forward information, not (opaquedata) packets. Hence, there exists a rich set of policiesattached to potentially every information item. UnlikeBGP, this approach also allows for multiple ITF functions,each offering different sets of peering and transitopportunities that were exposed to them. This establishesthe potential for peering markets in which the ITFproviders serve as routing service providers. Choice can beachieved here by ASes publishing peering and transitrelations to various ITF functions, usually constrained bypolicies governing these relations, while particular (sets of)ITF functions are chosen for topology formation. Thedesire to separate the tussle of (policy-based) inter-domainpath selection and inter-domain forwarding requires thattransit ASes cannot make additional policy-based decisionson traversing packets1, e.g., changing the next peering hopafter the path selection decision.After constructing inter-domain paths between theforwarding networks to which publisher and subscribers areattached, intra-domain paths need to be constructed. This isdone in collaboration with the AS-internal topologymanagement function, which instructs its local forwardingnodes (FNs) to establish paths to local publishers and/orsubscribers or to serve as transfer links between ASes. As1We omit the details of how such separation can be enforcedthrough new forwarding solutions that have been developed.in the current Internet, we do not prescribe any particularintra-domain forwarding mechanism, with the oneconstraint that the local mechanisms should support thetraffic policies chosen by the ITF function.2.2 Layering: A Different Internet HourglassUtilizing identifiers and the concept of scoping forstructuring information goes further than attempting toprovide application developers with a more natural way toaccess the network. Instead, it leads to a concept of layeringthat describes a new way to build up a layered architecture– defining a new Internet hourglass.Referring to Figure 2, the concepts of (information) itemswithin scopes are utilized above the waist to implementscopes of discourse through the composition of scopes.These composed scopes can be used as constraints in thepub/sub operations that act upon an information item. Withthis, we assert, concepts of context, scope of informationreachability and other social constructs can be implementedthrough recursively applying a scoping operation.Figure 2: A New HourglassFor instance, a high-level service such as Facebook mightconstitute a very large scope, exposed in the special globalscope for universal reachability towards the members ofFacebook. This larger scope can be further constrained asgroup or friend scopes, eventually limiting the reachabilityof the information items residing in these scopes ofdiscourse. The reachability of the information items togiven sets of users, e.g., your friends on Facebook, can belimited through realizing access control mechanisms forparticular scopes. Hence, with this set of constrainingscopes, various communication patterns within socialnetworking applications can be implemented.In another example, one can represent an organizationalstructure, in which a corporation is reflected in the highestscope (within the organization) with further scopes beingused to constrain information to, e.g., business units,departments, groups, or individuals. It is worth noting thatthere is likely to exist a resolution mechanism for resolvinghuman-readable concepts onto the scopes of discourse andthe labeling within each of these scopes.At the level of the waist, a new API is exposed to theapplication developer, which provides a higher level ofabstraction where individual information items arerequested through a pub/sub-like service model.

While we utilize the scoping concept above the waist toimplement social structures through composing scopes ofdiscourse, scoping is utilized below the waist, too, asscopes of implementation. Here, the discourse is that ofrealizing the delivery of information across actual transportnetworks. Scopes define the boundaries for a functionalmodel of network functions that determine thedissemination strategy for the information items residingwithin a particular scope. These major functions relate tofinding information, forming an appropriate delivery graphand finally delivering information along the formed graph.As indicated in Figure 2, such boundaries can be thought ofas node-internal strategies, link-local strategies, strategieswithin single domains, or across domains. The authors in[5], for instance, describe a node-internal implementationfor an information-centric protocol stack that provides itsown node-local scope for inter-process communicationwhile providing scopes for intra- and inter-domain networkfunctions, utilized for local forwarding, topologymanagement, rendezvous or alike. The techniques in [6]outline an intra-domain forwarding solution, whicheffectively implements a series of overlapping link-localscopes within a single intra-domain scope. The informationthat is being disseminated is a series of packets beingtransmitted from a publisher (or domain ingress) node. Thislevel of implementation is possibly several ‘layers’ underthat of the application developer’s original publication.This effectively leads to extending a high-level API that isexposed towards the application developer – we omit thedetails of the API and refer to more detailed technicaldescriptions such as in [5].3. A TUSSLE TAXONOMYWe now turn to the various conflicts that can occur in thearchitectural context we outlined. We start with examplesfor conflicts, some of which we will deepen in our later usecases. From these examples, we then formulate a tussletaxonomy that can guide our work on exploring the tusslespace for information-centric networking.3.1 Some Examples of Potential TusslesTussles about what content we want and what we get: acommon problem in today’s Internet is the delivery ofcontent that users do not actually want. In today’s Internet,spamming has no sufficient cost and still remains acommon marketing tool for most advertisers. There is atussle between end-users and content providers that sendspam e-mails, bulk messages or additional web pages thatappear in users’ browsers. Not only does this conflict withthe users’ interests, but it furthermore results in increasingcongestion within networks and therefore increased costsfor the delivery of the desired content. Although theinformation-centric architecture of Section 2 addresses thisconflict by introducing a publish/subscribe service notion2,2It is important to understand that content is only delivered if areceiver indicated the interest in receiving it. Hence, it is thenew tussles may occur in our architecture. For instance,malicious users could send fake requests to the rendezvoussystem of our architecture, influencing the ranking systemthat is possibly implemented in the rendezvous point for theparticular information. Such attacks are commonly knownin today’s Internet within ranking systems such as onlineshopping and alike. Hence, solutions to this problem needto be similar than in today’s systems.Tussles about what we need to expose in order to get whatwe want: Related to the issue of receiving wanted content,there is a recognized conflict that occurs when beingrequired to reveal certain information in order to receiveother. End users have become accustomed to gainingaccess to seemingly free content, albeit at the cost ofrevealing a plethora of information in the process of doingso. This is largely a conflict between end users and contentproviders, the latter gathering information aboutconsumption at large-scale. Although data protectiondirectives exist from various legislations, large-scaleprofiling is still considered as being in its infancy and theproblems and impacts are still to be investigated. We canrecognize, however, that our architecture introduces a clearcontrol point for this conflict in the form of the rendezvouspoint for a particular information exchange.Tussles about ownership of experience: who ‘owns’ theexperience that is delivered to the end user is a conflict thatwidely exist in today’s Internet already. Users have theirdelivery contract with their ISPs while often havingadditional agreements with content providers as well. Who‘owns’ the experience here? The work in [7] has alreadypointed to the problems arising in such constellation ofrelationships and the problems that result from theseparation of opaque bit transfer at IP level and theinformation exchange that is largely the WWW today. Ourarchitecture in Section 2 introduces the rendezvousfunctionality as an intermediary between transport and endusers. However, there is still a remaining tussle between theowners of actual delivery topology (represented through thetopology manager function) and the owners of content(represented through the rendezvous function). Similar totoday’s bundled service offerings, ISPs might decide tooffer rendezvous services, entering the game of brokeringinformation in addition to delivering it. This could becountered, however, through regulatory enforcement ofchoice in selecting rendezvous services (similar to choosingyour DNS service today). In conclusion, the conflicts arenot much different but the modular boundaries, definedthrough the introduction of new architectural roles, couldbe different and therefore allow for different outcomes;something we elaborate on in our case in Section 4.Tussles about optimizing delivery networks: related to theconflict of who owns the end user experience is that ofoptimizing the utilization of delivery networks. One aspectrendezvous point that becomes the place for mediation andtherefore a crucial control point in the conflict of spamming!

of this conflict is that of the role of content deliverynetworks (CDNs). CDNs are widely used in the currentInternet to optimize the delivery of content. In mostdeployments, large content providers pay CDNs to delivertheir content more efficiently and with guaranteedlatencies. ISPs collaborate with CDNs in order to performsuch optimized delivery. But recent initiatives such as theUK-based YouView [8] platform demonstrate the desire ofISPs to directly compete with CDN providers, such asAkamai, by replacing this overlay function with a nativelysupported function at ISP level. The prospect of offeringlower prices for content distribution by directly exploitingthe available infrastructure knowledge is what drives theseefforts, albeit without a clear architectural basis forrealization. Within our architecture, such ability to directlyoffer a service equivalent to today’s CDNs is given throughthe exposure of a dedicated topology manager function (seeSection 2.1). The boundary here lies in the interfacebetween the rendezvous provider (representing experiencerequirements from the end user and content provider side)and the topology function (representing operationalrequirements from the ISP side).Tussles about interconnecting networks: As part of theaforementioned optimization tussle, there is a set ofparticular conflicts related to interconnecting individualtransport networks. One set of conflicts is that around theproblem of optimizing across administrative boundaries,similar to proposals for inter-domain routing providers [9].Such optimization often requires revealing operational data,such as topology information, link and router loads etc.,which is seen as highly confidential by the individual ISPs.Although collaborating ISPs have an incentive to betruthful about their topology in order to have win-winsituations, there could be situations in which untruthfuloperation is seen as beneficial, e.g., resulting in informationexchange that unilaterally influences the choice of pathsthat are created (e.g., to shift load towards a particular ISP).We believe, however, that our information-centric aspectenables the possibility to expose the exchanged informationsimilar to end user level content and apply similar rankingmechanisms that are used for content itself.Another set of conflicts comes into play in the incentive tointerconnect transit and access ISPs. With the transit ISP’sbusiness being based on the transport of content across itsnetwork, there is an obvious conflict between the desire tolocally cache popular content at access ISP level (not onlyfor cost reduction towards the transit ISP but also tomaximize the user’s experience in terms of reducedlatency). Hence, transit ISPs lack an incentive to participatein an architectural change that is driven by an informationcentric viewpoint as outlined in Section 2. This has alsobeen recognized in [10]. However, such conflict could bedecided decisively different when moving towards atransaction-based cost model, as suggested in [7], whichcould be enabled by the information-centric nature of thearchitecture as proposed in Section 2.1. Our use case inSection 5 addresses some of these conflicts.Another interconnection tussle arises at the level ofinterconnecting individual rendezvous solutions within ourarchitecture. The outcome of this tussle inherentlyinfluences aspects like reachability in the globalinformation space and eventually the fragmentation ofmarkets due to competing offerings. While interconnectionincentives can be driven by economic as well as regulatoryforces, desires to isolate counter these forces in areas wheresuch isolation is required (e.g., for security reasons) ordesired (e.g., for regionalization reasons). Our use case inSection 7 addresses some of these aspects.Other examples, being left out for reasons of space, addressissues of who defines identifiers as well as the structure forinformation (i.e., the structure of scopes in Section 2.2) aswell as who ensures a trustworthy execution of variousfunctions. While our following taxonomy lists some ofthese particular conflicts, it is clear that only deeperelaboration and study in future work can shed more light onthese important issues.3.2 A First Estimation for a Tussle TaxonomyBefore elaborating on some of our examples in more detailthroughout the following section, we first formulate a firstestimation for a taxonomy of tussles that can be utilized fora systematic investigation of the larger tussle space.Figure 3 presents the various categories of tussles that weidentified. It can be seen that the categories are notmutually exclusive, e.g., security tussles related toinformation overlap with tussles in the informationcategory with the latter being more concerned economicaspects of our information-centric perspective. We can seethat the inner categories are all encompassed by the largersocio-economic tussle category that is concerned with theestablishment as well as intervention of markets (theintervention driven by various socio-economic players).Figure 3: Tussle CategoriesTable I elaborates on our tussle taxonomy. It outlines thelikely involved actors as well as the architectural functionsaffected in some form or another. What is missing from thistaxonomy is the particular remedy that our architecturalapproach provides in accommodating the tussles in eachparticular category. This is left for our tussle spaceexploration. We furthermore return to architectural lessonslearned from our work in Section 8.4. USE CASE: ACCESS PROVISIONINGWe now turn to use cases for conflicts, investigating howour information-centric vision of an Internet architecturecould affect the business models of existing actors. Ourfirst example is that of current ISPs and their core businessof providing Internet access to end users and business alike.

CategorySecurityAspects of ConflictsActors InvolvedArchitecturalFunctions AffectedInfrastructure security: who makes routing decisions?Who can define requirements affecting infrastructuresecurity (such as path choices, load, )?ISPs, content providers,rendezvousproviders,key providers, end anagementforidentifierspace,network attachmentat end nodesAllarchitecturalfunctionsTrust in information: provenance, confidentialityISPs, content providers,rendezvousproviders,end users, regulatorsInformation governance: Governance of identifierspace as well as ownership of the defined informationspaceISPs, content providers,rendezvousproviders,end users, regulatorsRendezvous,keymanagementforidentifier spaceTier1 ISPs, access ISPs,end users, osystemAllarchitecturalfunctionsInformation security: Payload encryption and keymanagement (e.g., self-certified vs centralized),Governance of identifier space (e.g., long-lived vsshort-lived identifiers), Governance of informationstructures (e.g., changes in structure to avoid profiling)Accountability: conflict between accountability andprivacy of actions as well as contentTrustInformationTrust in functions: policy-compliant execution,isolation of functions possibly misbehavingBrokering information: policies for matching interestsand availability, aspects of profiling usage andconsumption for the benefit of, e.g., advertisementInfrastructureBrokering topological capabilities: exposure ofinfrastructure information for optimized resourceusage within and across networksDelivering bits: delivery of individual informationitems that is compliant to some agreed policy duringroute selectionSocioEconomicEstablishing flexible information asymmetries: flexibleexposure of stakeholder requirements, such as QoS orpath selection, and association of pricing regimes witheach with the ultimate goal to establish an informationasymmetry that results in a market structure.intheDefining f

Information-centric networking has been touted as a replacement to the traditional endpoint-centric IP networking approach of the current Internet. In order to enable an understanding of the tussle work that is introduced in the later sections, we first provide a brief introduction into this new architectural context that .

Related Documents:

May 02, 2018 · D. Program Evaluation ͟The organization has provided a description of the framework for how each program will be evaluated. The framework should include all the elements below: ͟The evaluation methods are cost-effective for the organization ͟Quantitative and qualitative data is being collected (at Basics tier, data collection must have begun)

Silat is a combative art of self-defense and survival rooted from Matay archipelago. It was traced at thé early of Langkasuka Kingdom (2nd century CE) till thé reign of Melaka (Malaysia) Sultanate era (13th century). Silat has now evolved to become part of social culture and tradition with thé appearance of a fine physical and spiritual .

On an exceptional basis, Member States may request UNESCO to provide thé candidates with access to thé platform so they can complète thé form by themselves. Thèse requests must be addressed to esd rize unesco. or by 15 A ril 2021 UNESCO will provide thé nomineewith accessto thé platform via their émail address.

̶The leading indicator of employee engagement is based on the quality of the relationship between employee and supervisor Empower your managers! ̶Help them understand the impact on the organization ̶Share important changes, plan options, tasks, and deadlines ̶Provide key messages and talking points ̶Prepare them to answer employee questions

Dr. Sunita Bharatwal** Dr. Pawan Garga*** Abstract Customer satisfaction is derived from thè functionalities and values, a product or Service can provide. The current study aims to segregate thè dimensions of ordine Service quality and gather insights on its impact on web shopping. The trends of purchases have

Bruksanvisning för bilstereo . Bruksanvisning for bilstereo . Instrukcja obsługi samochodowego odtwarzacza stereo . Operating Instructions for Car Stereo . 610-104 . SV . Bruksanvisning i original

Chính Văn.- Còn đức Thế tôn thì tuệ giác cực kỳ trong sạch 8: hiện hành bất nhị 9, đạt đến vô tướng 10, đứng vào chỗ đứng của các đức Thế tôn 11, thể hiện tính bình đẳng của các Ngài, đến chỗ không còn chướng ngại 12, giáo pháp không thể khuynh đảo, tâm thức không bị cản trở, cái được

Copyright National Literacy Trust (Alex Rider Secret Mission teaching ideas) Trademarks Alex Rider ; Boy with Torch Logo 2010 Stormbreaker Productions Ltd .