Research and Advances
Architecture and Hardware Contributed articles: Virtual extension

Supporting Ubiquitous Location Information in Interworking 3G and Wireless Networks

Users and wireless ISPs could tap location-based services across networks to create ubiquitous personal networks.
Posted
  1. Introduction
  2. Position on a Mobile Terminal
  3. Ubiquitous Services
  4. Open-Standards-Based Architecture
  5. Mapping QoP Requirements
  6. Privacy and Security
  7. Conclusion
  8. Acknowledgment
  9. References
  10. Authors
  11. Footnotes
  12. Figures
  13. Sidebar: key insights

Location-based services (LBSs) have emerged as an important interest of wireless Internet service providers (WISPs) and network operators.12,18 Positioning mobile devices in the third generation (3G) of wireless communication networks (such as Universal Mobile Telecommunications System, or UMTS)1,16 is crucial to many commercial services, including location applications that utilize accurate positioning (such as handset navigation tracking and locating points of interest); public and private emergency services, calling firefighters, medical teams, and emergency roadside assistance; and future applications (such as fraud detection, location-sensitive billing, and advertising).

However, positioning techniques vary by accuracy, implementation cost, and typical application scenarios (such as indoor and outdoor). WISPs can exploit their availability in order to locate their users in heterogeneous environments by using the most suitable positioning technique in a manner transparent to the user. The recent interworking between 3G systems and the current generation of wireless networks (such as IEEE 802.11 and Bluetooth) allows WISPs to leverage wireless networks for localization purposes. Wireless hotspots in public and private places (including homes, offices, airports, shopping malls, arenas, hotels, and libraries),3 along with the new generation of mobile devices supporting multiple positioning technologies (such as GPS, Bluetooth, Wi-Fi, and RFID), fosters WISP development of integrated positioning systems.

Proprietary architectural solutions have been proposed, as in Faggion et al.7 and Autodesk.com,2 to provide ubiquitous location information by integrating multiple positioning methods and infrastructures. However, in order to put minimal demand on existing operator network infrastructure and safeguard customers from risk associated with new technologies, architectures, protocols, interfaces, and application environments means using open standards when designing solutions.

An open-standards-based solution would allow and encourage interoperability, enabling WISPs that adopt different positioning solutions to negotiate roaming agreements. They could then provide LBSs to their users across networks belonging to other WISPs using different standard-compliant location platforms, expanding the coverage area of their own location services and delivering benefits for themselves and their users alike.

Here, we explore the elements involved in provisioning LBSs and propose an open-standards-based two-tier architecture for inferring location information in heterogeneous wireless networks and ubiquitous personal networks (such as 3G, WLAN, and Bluetooth). This solution exploits multiple indoor and outdoor positioning methods and technologies to infer and provide location information compliant with LBS requirements, including accuracy, coverage, privacy, and security. Being designed as a user-plane architecture means location information is part of wireless user data and transported over user bearers (such as the wireless data network IP and short message service, or SMS). The architecture is based on the Open Mobile Alliance Secure User Plane Location (SUPL)9 using existing standards when available and enabling exchange of positioning information between mobile terminals and the network.

The two levels in the architecture provide appropriate abstractions for supporting an extensible framework that enables new positioning technologies supported by the network or by the mobile device, added without further change to the existing architecture. Increased performance scalability makes it possible to balance the load among servers at different levels.

The logical separation between communication and positioning infrastructures allows WISPs to locate a user through a network different from the one to which it is connected. This feature enables positioning and communication technologies to evolve independently, simplifying integration between them in the architecture.

Back to Top

Position on a Mobile Terminal

LBSs are any application service capable of exploiting the position of a mobile terminal. Among them, the following four are considered most promising5,14,17 in terms of market penetration:

Information services. Refers mainly to the delivery of information based on target market and user profiles and preferences and are classified by three relationships:

B2C. User location information can be used by WISPs to promote local products and advertising campaigns;

C2B. Users can request computation of their location to gain access to precise information (such as about restaurants, gas stations, and traffic); and

C2C. Users can locate friends, family members, and the communities to which they belong (such as sport, music, and cinema).

Monitoring services. Used for monitoring and managing fleets and tracking location of objects (such as cars, trucks, trailers, and containers) and individuals (such as truck drivers and delivery, maintenance, and security personnel).

Emergency services. Used for public and private emergency response (such as for calling firefighters, medical teams, and roadside assistance) without a subscription and accessible by any mobile user in accordance with the governing regulations.

Operator services. Location information of devices or users used to significantly improve the performance of wireless network (such as for network planning, network adaptation, load balancing, resources optimization, and handover).

LBSs can be classified into two service groups, depending how the positioning procedure begins: pull, in which device location is estimated on the basis of a direct user request (such as for emergency services), and push, in which the positioning procedure is required by a network application (such as an advertising-message-delivery service) and indirectly by a user (such as through a subscription to a news provider).

Back to Top

Ubiquitous Services

WISPs providing these services through heterogeneous networks and scenarios must be able to blend a variety of elements, including wireless communication networks, positioning systems, location architectures and protocols, and open location standards (see Figure 1). The wireless network infrastructure allows delivery of LBSs, as well as transfer of service requests and location information. The positioning system is the technology-specific subsystem that infers user/object location. The location architecture and protocols specify the responsibilities of the entities, as well as how to exchange location information among them, independent of positioning technologies. Standards ensure multiple-vendor LBS interoperability.

Wireless infrastructures. Wireless communication networks are classified in two ways:

Network range. Coverage of a wide-area cell is generally much larger than a local/personal wireless network (such as WLANs and WPANs); and

Network topology. Large infrastructures might consist of fixed nodes (such as wireless wide-area networks, or WWANs) or self-configuring mobile nodes connected by wireless links to form arbitrary topologies (such as piconet Bluetooth and IEEE 802.11 networks).

The 3G wireless interworking network includes WWANs; for example, UMTS and GSM/GPRS networks and local/personal wireless networks called home networks, or HNs. One or more HNs may reside within a single wide-area cell, with each HN connected to the 3G core network in the same manner as 3G-radio-access technologies, allowing reuse of 3G mechanisms for mobility and security.6

Positioning systems. Locating users at any time and place involves different positioning infrastructures for indoor and outdoor location sensing. For outdoor, the most widely used positioning systems are the Global Positioning System (GPS) and Assisted GPS (A-GPS).18 In dense urban areas and inside buildings where GPS is limited, the Cell-ID-based solution is the easiest but most imprecise solution related to the physical position of the wireless base station. Its accuracy is typically associated with cell sizes ranging from around 100 meters to several tens of kilometers. Increasing accuracy up to 100m–500m in an urban area involves solutions based on measurements of received signal strength (RSS), time of arrival (TOA), angle of arrival (AOA), and time difference of arrival (TDOA) from neighboring base stations. Enhanced GPS allows higher accuracies (1m–3m) covering most environments, including indoor, without connecting a AGPS server to a WAN or having to wait several minutes, as with traditional GPS.13

Since these solutions either do not satisfy accuracy requirements of some positioning services in indoor environments or are expensive due to required changes to network elements, more attractive solutions based on standard wireless communication systems (such as IEEE 802.11 and Bluetooth) are required.10 For example, Bluetooth makes it easy to position a Bluetooth-enabled device, with accuracy related to piconet size (such as about 15m), with an update rate of a few seconds. The combination of RSS measurements (of the Bluetooth or 802.11 signal) with triangulation or fingerprinting techniques4 can increase accuracy by 3m–10m.

More accurate, but also more expensive, solutions are based on ultrasonic, audible-sound, and vision-based technologies; less-costly solutions may be based on RFID technology. Meanwhile, data-fusion techniques, possibly overcoming the shortcomings of a single positioning technology, combine measurements from different positioning technologies in order to improve the availability and accuracy of a positioning service (see Figure 2). The choice of positioning solution best able to locate a mobile device can be influenced by LBS position requirements (such as accuracy, response time, privacy, and device capabilities).

Location architectures. Two standard approaches—control plane and user plane9—have been adopted for location architectures, with the choice between them influencing the quality of provided services.8 The main feature of a control-plane architecture is how it exchanges location data through control channels, allowing simultaneous voice and data communications, a feature tailored for voice-centric applications and emergency services. For this reason, it was adopted by U.S. telecom operators for the E911 emergency service. However, it is not totally suited to consumer-oriented applications because it does not allow handset-location applications and is expensive and not flexible (due to necessary network infrastructural changes).

The need to integrate application-centric solutions in heterogeneous networks has led to a user-plane architecture using IP to transfer location information instead of control channels. In it, location information is part of wireless user data and transported via wireless data networks (such as the Internet) and SMS, but does not imply the kind of changes required by control-plane architectures, even while simplifying application deployment.

Interoperability. LBS delivery involves participation of multiple players, from technology providers to data providers, software and hardware developers, wireless communication networks and positioning infrastructure providers, wireless handset vendors, and content and wireless service providers. Common standards for interfacing and integrating different entities must also be considered and defined to ensure multi-vendor LBS integration. The Open Mobile Alliance SUPL specification11 is a collection of specifications for defining a way to transfer location information among SUPL-enabled terminals, or SETs, and location applications. It utilizes existing standards where available and user-plane-data bearers, requiring only IP-capable networks and minimal modification of network elements.

SUPL allows positioning solutions based on A-GPS, Enhanced GPS, Enhanced Cell-Id, Enhanced Observed Time Difference (EOTD), and Observed Time Difference of Arrival (OTDOA), defining how signaling and position information should be transferred among multiple actors through wireless networks independent of positioning system. It also defines security (as authentication and authorization), as well as privacy and charging functions. Moreover, SUPL specifications define the roaming functions that make SUPL effective for extensible and flexible LBSs in heterogeneous contexts.

SUPL network architecture. Figure 3 outlines the SUPL network architecture model in terms of network entities and reference points representing demarcations among entities and is characterized by five logical components:

SUPL enabler terminal, or SET. A device able to communicate with a SUPL network;

Mobile Location Service, or MLS. An application requiring and consuming position information to provide LBSs;

SUPL agent. The service access point that accesses network resources to obtain location information;

SUPL location platform, or SLP. The core of the platform responsible for estimating and delivering SET position information. It consists of a SUPL Location Center (SLC) that coordinates the operations in the network and interacts with the SET and a SUPL Positioning Center (SPC) responsible for all messages and procedures required for SET positioning; and

Wireless Application Protocol Push Proxy Gateway (WAP PPG) and Short Message Service Center (SMSC). SLPs communicate with SETs via WAP or SMS messages.

The MLS application and SUPL agent reside independently in the network, as well as in the SET. If the SUPL Agent is in the network, the service is called Network Initiated SUPL; if in the SET, the service is called SET Initiated SUPL.

Back to Top

Open-Standards-Based Architecture

In order to provide ubiquitous location information to both push and pull LBSs through 3G and HN interworking networks, WISPs adopt a two-level hierarchical SUPL-based architecture (see Figure 4) supporting interoperability among SUPL-compliant location platforms and networks with complementary location-sensing features: classical 3G infrastructure at the first level and HN networks at the second. Each level includes positioning cells managed by a different kind of SLP. High-level SLPs are responsible for user-position information in WWANs, whereas low-level SLPs, called Local SLP, or L-SLP, are associated with HNs. An L-SLP may be integrated into an HN or located in a separate network entity where it manages several HNs and locates the SETs within their coverage area. For example, each L-SLP can manage correspondence between an HN cell identifier (Cell-ID) and its geographic coordinates without involving a wide-area-network provider. The L-SLP is free to choose the positioning method in accordance with MLS-requested quality of positioning (QoP) and the SET and the positioning infrastructure. Each high-level SLP could manage multiple L-SLPs within its coverage area, performing the role of Home SLP (H-SLP) and Visited SLP (V-SLP):

H-SLP. When performing as the H-SLP, the SLP manages the SET’s personal information (such as subscription, authentication, and privacy-related) involved in interfacing with an MLS and receives location requests from network-resident and handset-resident MLS applications. If the request comes from a SET, it authenticates the SET, checking whether it is authorized to request user location. It is also responsible for transmitting the required service quality (such as accuracy and response time) to the positioning network entities and for converting the positioning results into the desired format (such as Cell-ID into location coordinates); and

V-SLP: SUPL roaming may occur when a SET leaves the HSLP service area. In order to provide the SET position estimation, the H-SLP can contact the V-SLP to which the SET is connected. The H-SLP may request the V-SLP provide an initial position estimation (such as based on Cell-ID) or fine-location estimation.

Push and pull delivery services. A push service is an MLS application requiring the position of a SET attached to an interworking 3G-HN network (such as for an advertising service requiring notification as soon as a specified SET is within a particular area). A push service involves six steps:

Step 1. The network-resident MLS application requests the position of the SET to the H-SLP of the target subscriber;

Step 2. The H-SLP determines if the terminal is roaming a WISP infrastructure or is at a public connectivity service with which it has a roaming agreement supporting localization. Roaming or not, two things must be done:

  • The H-SLP creates a location session with the SET by sending a SUPL INIT message via SMS or WAP push message with the positioning method it intends to use; and
  • The SET establishes a secure IP connection with the H-SLP, then determines its location-id, or lid, based on Cell-ID, sending it to the H-SLP in a SUPL POS INIT message including positioning methods.

Step 3. If the SET is not roaming (it could reside in the H-SLP area, attached to HSLP structures like 3G and Wi-Fi/Bluetooth cell) and the position computed by means of the received lid does not meet QoP requirements, the following would happen:

  • The H-SLP sends a SUPL START message to the L-SLP associated with the target SET (selected on the basis of the received lid) in order to inform the L-SLP that a more precisely computed SET position is required. The POS INIT message is then forwarded to the L-SLP;
  • Depending on QoP, the L-SLP computes a SET position with a method chosen from the methods supported by the SET and by the network-positioning infrastructure, sending the position to the H-SLP. Note that some positioning methods can be used only if the necessary infrastructure is in the L-SLP area (such as an access-point-based triangulation technique requiring at least three access points). WISPs may have to apply special techniques; for example, if the SET receives signals from access points belonging to different WISPs, the confidential geographical information about access points can be known only if there is agreement among WISPs concerning how to expose information about some (or all) of their access points. Otherwise the L-SLP switches to another supported technique to carry out the estimation; and
  • The H-SLP forwards the computed position to the requesting MLS application.

Step 4. If the SET is attached to a public/private entity providing a connection service with which the H-SLP has some agreements and resides in the HSLP area, the following three steps would happen:

• The H-SLP requires collaboration by the entity to determine the SET position, following request/acknowledgement messages;

• The H-SLP forwards the SUPL POS INIT message to the entity (called a visited SLP, or V-SLP) based on the lid in charge of the required estimation or providing the information to the H-SLP (such as the geographic coordinates of the access points id), in light of the WISP-to-WISP agreement; and

•The terminal is allowed to choose how to fill the lid field in the SUPL POS INIT message, perhaps by making it transmit the cellular cell id (residing in the H-SLP area) instead of the cell id of the entity to which it is attached. Other policies could be adopted, depending on the agreement between the WISP and the public/private entity.

Step 5. If the H-SLP area does not cover the terminal and is attached to another WISP or to an open-connection service entity, the terminal sends the SUPL POS INIT with its lid to the H-SLP, which forwards it to the VSLP of that WISP/entity. The VSLP is in charge of carrying out the required estimation based on that id with its own infrastructure. Options (as in Step 4, filling the lid field) are not allowed, because the terminal is not in the H-SLP area; and

Step 6. If the terminal is attached to a network with no agreement with the H-SLP, the terminal cannot be located.

The options in Step 4 are left to the specific implementation of a particular WISP and depend on the business agreement between it and other WISPs.

In a pull service, positioning data is required by an application residing on the requester SET. An example is C2B information services requiring user position for obtaining information about points of interest around the user’s location. The SET must contact the H-SLP and launch a positioning session. It sends to the H-SLP a SUPL START message containing its lid, supported positioning methods, and MLSs QoP. The H-SLP then determines if the SET is in roaming mode, and the protocol proceeds according to Step 2, with slight differences in the name of the messages.


Along with user privacy, business privacy must also be addressed when positioning techniques involve cooperation among WISPs.


These scenarios do not introduce change to SUPL interactions, only to the roles of the participating entities. The SUPL standard roaming scenarios in which an H-SLP forwards a positioning request to a Visited-SLP are perfectly compliant with them. When the SET is not in roaming mode, the L-SLP can be considered a V-SLP specialization; for example, an H-SLP must treat positioning requests as SUPL standard roaming, forwarding them to the L-SLPs.

Development of the architecture can be pursued incrementally, so a new L-SLP can be added transparently for end users. End-user devices implement the same protocol and always see an SLP to which the protocol interacts independent of its logical function (H-, V-, or LSLP); that is, the SUPL messages the devices receive and send are always the same.

Finally, worth noting is that a two-tier architecture makes the solution more scalable, with the H-SLP having to forward only the positioning requests to the right L-SLP. The H-SLP is not responsible for computing each SET position, as in the SUPL standard.

Back to Top

Mapping QoP Requirements

In order to ensure delivery of services to mobile users, our proposed solution allows MLS applications to exploit multiple positioning technologies, choosing the one most suitable based on QoP requirements associated with an LBS service request,15 including horizontal and vertical accuracy, location age (or maximum tolerable age of estimated cached position), and response time.

If the first coarse position based on lid does not satisfy the requested QoP, the SET and the SLP could perform several positioning procedures to determine a finer position. Based on QoP, the SLP sends the positioning method it intends to use to the target SET, adopting both a handset-side and network-side approach. In a handset approach, the mobile device uses the signals (such as Bluetooth, 802.11, and satellite signals) transmitted by the surrounding positioning infrastructure to estimate its position. In the network approach, the SLP can use components of the surrounding infrastructure to track the position of devices in its coverage area. Alternatively, the SET can adopt an infrastructure-assisted approach, sending a request to an external positioning system to calculate or improve position measurements (such as the Assisted GPS). The choice of positioning method depends on the provided accuracy, as well as on required structural modifications and privacy and security considerations.

Back to Top

Privacy and Security

Privacy is a major concern when designing a system to locate users’ portable devices, addressing how user-location information is used and logged, who controls access to location information, and how a location system should be implemented to allow different levels of access. Users must be able to specify their own privacy preferences; for example, at home, users may want to receive advertising about current promotions, whereas at the office they may want an authorization request for sending the messages. These preferences must be translated into polices for using or publishing user position data. A privacy check may be done by the H-SLP following computing positioning but before the user location is sent to the requesting entity. Along with user privacy, business privacy must also be addressed when positioning techniques involve cooperation among WISPs. Legally binding agreements are needed to cope with this open issue.

Mutual authentication between the network entities (the H-SLP) and the SET is needed to address both user and network security. Authentication is performed through the Pre-Shared Key Ciphersuites for Transport Layer Security (PSK-TLS) protocol using security credentials associated with the SET user. After a SUPL INIT message is received by SMS, the SET must establish a data connection with the H-SLP and initiate the PSK-TLS session. The data connection can be established through a cellular interface—GSM, GPRS, or UMTS—or a wireless interface—802.11 or Bluetooth—depending on handset equipment and connection availability at the moment. For cellular, the L-SLP is not implied during the connection or authentication, and the PSK-TLS session between SET and H-SLP can be created per the SUPL standard. For wireless, the connection is established by the SET toward the nearest L-SLP access point. The L-SLP manages user connection requests to allow SUPL registered users to begin the PSK-TLS session with the H-SLP.

Back to Top

Conclusion

Ensuring LBS integration of multiple software, hardware, positioning, and connectivity components involves open location standards to design location-aware solutions. Here, we’ve outlined the main elements WISPs must address to be able to offer LBSs and proposed an integrated solution for inferring and providing indoor and outdoor user-location information through heterogeneous networks and location platforms. We also described a two-tier SUPL-based architecture through which different WISPs could seamlessly provide service tailored for each need: most convenient positioning technology in terms of precision-cost trade-off; user-bearer communication technology available at a given moment in the considered area; and inter-WISP roaming capability.

Back to Top

Acknowledgment

This work was supported by Regione Campania in the framework of the Programma Operativo Regionale Campania Misura 3.17 Project NET-UNO. The initial investigation of the features of the Secure User Plane Location standard supporting interworking of 3G and wireless networks was carried out with cooperation from NEC Europe. We would like to thank Salvatore Longobardo of NEC Europe for the useful discussions we had on SUPL at the inception of this work.

Back to Top

Back to Top

Back to Top

Back to Top

Figures

F1 Figure 1. The entities involved in LBS delivery.

F2 Figure 2. LBS and positioning techniques.

F3 Figure 3. The SUPL architecture.

F4 Figure 4. The positioning architecture.

Back to Top

    1. Akyildiz, I.F., McNair, J., Ho, J.S., Uzunalioglu, H., and Wang, W. Mobility management in next generation wireless systems. Proceedings of the IEEE 87, 8 (Aug. 1999), 1347–1385.

    2. Autodesk, Inc. Captivate a New Generation: Autodesk Location Logic; http://images.autodesk.com/adsk/files/adsklocationlogic092006.pdf

    3. Axiotis, D.I., Al-Gizawi, T., Peppas, K., Protonotarios, E.N., Lazarakis, F.I., Papadias, C., and Philippopoulos, P.I. Services in interworking 3G and WLAN environments. IEEE Wireless Commun. 11, 5 (Oct. 2004), 14–20.

    4. Darabi, H.L., Banerjee, H., and Jing Liu, P. Survey of wireless indoor positioning techniques and systems. IEEE Transactions on Systems, Man, and Cybernetics 37, 6 (Nov. 2007) 1067–1080.

    5. Dru, M.A. and Saada, S. Location-based mobile services: The essentials. Alcatel Telecom. Review (First Quarter 2001), 71–76.

    6. E uropean Telecommunications Standards Institute. Broadband Radio Access Networks, HIPERLAN Type 2: Requirements and Architectures for Interworking Between HIPERLAN/2 and Third-Generation Cellular. Technical Report 101 957.

    7. Faggion, N. and Leroy, S. Alcatel End-To-End Location-Based Services Solution. White Paper. Alcatel Telecommunications, Italy, Sept. 2005; http://whitepapers.techrepublic.com.com/abstract.aspx?docid=151904

    8. Gum, A. and Burroughs, K. Wireless choices for LBS. GPS World Magazine 17, 3 (Mar. 2006), 32–40.

    9. Gum, A. and Burroughs, K. Wireless Choices for LBS: Control Plane and User Plane Architectures. White Paper (Mar. 2006); http://findarticles.com/p/articles/mi_m0BPW/is_3_17/ai_n27073367/

    10. Manesis, T. and Avouris, N. Survey of position location techniques in mobile systems. In Proceedings of the Seventh ACM International Conference on Human-Computer Interaction with Mobile Devices and Services (Salzburg, Austria, Sept. 19–22). ACM Press, New York, 2005, 291–294.

    11. Open Mobile Alliance. Secure User Plane Location: V.1; http://old.openmobilealliance.org/releaseprogram/suplv10.html and v.2: http://www.openmobilealliance.org/Technical/releaseprogram/suplv20.aspx

    12. Rao, B. and Minikakis, L. Evolution of mobile location-based services. Commun. ACM 46, 12 (Dec. 2003), 61–65.

    13. Rowe, R.W., Duffett-Smith, P.J., Jarvis, M.R., and Graube, N.G. Enhanced GPS: The tight integration of received cellular timing signals and GNSS receivers for ubiquitous positioning. In Proceedings of the IEEE/ION Position, Location and Navigation Symposium (Monterey, CA, May 5–8). IEEE Computer Society Press, 2008, 838–845.

    14. SiRF Technology, Inc. Location-Based Services: Amplifying ARPU (Average Revenue Per User) for Carriers. White Paper (Feb. 2007); http://www.sirf.com/sirfamplifyingLBS.pdf

    15. Third Generation Partnership Project. Location Services Enhancements: Universal Geographical Area Description. Technical Report 3GPP TS 23.032. (Nov. 2007); http://www.3gpp.org/ftp/Specs/htmlinfo/23032.htm

    16. Third Generation Partnership Project. Functional Stage-2 Description of Location Services in the Universal Mobile Telecommunications System. Technical Report 3GPP TS 23.171 v3.9.0 (2002); http://www.3gpp.org/ftp/specs/html.../TSG-WG-S2.htm

    17. Universal Mobile Telecommunications System Forum. The UMTS Third Generation Market Study Update. Technical Report 17 (Aug. 2001); http://www.umtsforum.org

    18. Zhao, Z. Standardization of mobile phone positioning for 3G systems. IEEE Commun. 40, 7 (July 2002), 108–116.

    DOI: http://doi.acm.org/10.1145/1839676.1839702

Join the Discussion (0)

Become a Member or Sign In to Post a Comment

The Latest from CACM

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More