Web Architecture
Summer 2016
RISD
Final Project
Holiday Shapiro

The Architecture of Change: The Bernie Sanders Campaign and the OSI Model

About the Project

This project considers the OSI model of web architecture in the context of the recently concluded Bernie Sanders presidential campaign.

Web technology has driven a range of social movements in recent years, including the Arab Spring and Occupy Wall Street, and web technology was crucial to the unlikely success of Sanders’ insurgent campaign for the presidency.

Like Howard Dean's 2004 "people-powered" campaign and President Obama's winning 2008 and 2012 campaigns, the Sanders campaign is a case study in Internet-based political organizing. These previous campaigns successfully harnessed Internet technology to raise money, collect and analyze data, and mobilize supporters. The Sanders campaign inherited these ideas and approaches and managed to take them further, both by deploying an unprecedented range of communications technologies and by taking advantage of the opportunities these technologies offered for rapid scaling.

In the end, the Sanders campaign used communications technology to build a base of volunteers and supporters, connect with voters, and mobilize a mass movement for political change in a way and to an extent unseen in US politics to date.

This project explores the use by the Sanders campaign of three different communications technologies or platforms (websites, social media platforms, and apps like Slack). It seeks to contextualize the use of these technologies within the OSI model of web architecture.

Websites

Sites such as berniesanders.com and map.berniesanders.com (created by volunteer developers) were a critical organizing tool for the campaign, functioning as “clearinghouses” for campaign activity (The Nation).

These sites enabled the campaign to post and promote volunteer-run events: nearly 60,000 of them nationwide, as of March. These events included “everything from phone-banking house parties to visibility events to organizational meetings of local groups, ” according to Zack Exley, a senior adviser to the Sanders campaign (The Nation).

Other volunteer-built websites, like voteforbernie.org and feelthebern.org, also garnered millions of views.

Social media platforms

These platforms and services, especially Facebook and Reddit, the online message board, were a driving force behind the campaign.

In March 2016, The Nation (full disclosure: a publication that endorsed Sanders) reported that the Sanders campaign had amassed roughly “165 Facebook pages with 7.3 million likes, and nearly 200 Facebook groups with more than 358,000 members.” This huge show of support for Sanders online was unmatched by Secretary Clinton or any of the Republican presidential candidates.

In February, Politico reported that many of Sanders’ army of volunteer coders first connected with the campaign through Reddit. The SandersForPresident subReddit boasted more than 188,000 subscribers, according to Politico. The Reddit community would become a major source of small donations to the campaign, which, in turn, allowed for the hiring of more coders.

Slack

The use of apps, especially the messaging and coordination app Slack, was a vital aspect of the Sanders campaign.

According to Sanders senior adviser Becky Bond: "Our ‘Bernie Builders’ Slack team is where thousands of volunteers coordinate with each other in Slack channels that campaign staff also hang out in. Volunteers carry the load of countless tasks, and when they get stuck they can just tag a key volunteer or Bernie staffer who weighs in on questions big and small." (The Nation)

"They are plugged into Slack 24/7 whether they are at home, at work, or running errands, because they have the app on their phone. With all of this technology, we’re finding out that if it’s core to our work, even volunteers who are not tech savvy will do what it takes to learn how to use it. They want to help Bernie win, whether that means knocking on doors or downloading and using a Slack app."

Slack channels also allowed for private exchanges among campaign strategists and staff.

One new app per week

Yet Slack was just one of many apps widely used by the campaign. Politico reported, "Behind Sanders’ astonishing success in the primaries so far stands a coterie of more than 1,000 volunteer techies pumping out innovations like this at a rate of about one new app a week."

Bernie Photo Booth

Oh yes, there's more.

Politico: "Then there are the apps built outside the campaign that have helped turn Sanders into a viral Web hit, like the Bernie Photo Booth that lets supporters superimpose the candidate’s face or just his glasses and hair onto selfies and Facebook profile pictures; and the Bernie Light Brigade, a group of supporters who use Facebook, Reddit and other social media to organize meetings in parks, along highway overpasses and outside hotels where they display large glowing pro-Sanders signs."

The campaign also relied heavily on Hustle, a peer-to-peer texting app that The Daily Dot called the campaign's "secret weapon." Hustle allowed the campaign to build a massive base of support by sending person-to-person texts on an unprecedented scale to engage prospective volunteers.

A Sanders organizer named Zach Fang, who is widely credited with Hustle's implementation by the campaign, recognized that by using the app, "organizers could initiate an actual conversation via text, by sending questions that invite answers and then interacting individually with those replies. (The app, which obscures the recipient’s number, logs all the exchanges so they can be documented as part of a running interaction)" (Bloomberg News).

The OSI Model as a Vehicle for Sociopolitical Change

The Open Systems Interconnection (OSI) reference model is an abstract or conceptual framework for web functionality. It proposes "a consistent model of protocol layers, defining interoperability between network devices and software" (Wikipedia).

The analysis in this project of examples of these varied communications technologies by the Sanders campaign within the context of the OSI model offers insight into the contribution of web architecture to processes of social and political change.

Sources:

https://www.thenation.com/article/how-the-sanders-campaign-is-reinventing-the-use-of-tech-in-politics/

http://www.politico.com/magazine/story/2016/02/bernie-sanders-army-of-coders-2016-213647

http://www.bloomberg.com/politics/features/2016-02-24/behind-bernie-sanders-revolution-lies-a-meticulously-engineered-grassroots-network

http://www.dailydot.com/layer8/hustle-app-bernie-sanders-texting/

https://en.wikipedia.org/wiki/Open_Systems_Interconnection

Web architecture can be understood as a "stack of services, each of which has been standardized" (Bruce Campbell, RISD)

1. physical layer





about the physical layer

At the physical layer, raw data are transmitted in bit streams over a physical medium. Cables carry electric current, and binary values of zeroes and ones are generated and carried by that electric current.

When we refer to the physical layer, we are referring to the wire or channel that we use to connect.

NOTE: There are physical layers for both wired and wireless communications.

In the boxes below, I consider an example from each of three categories of information technology used by the Sanders campaign: websites (map.berniesanders.com), social networking platforms (Facebook), and mobile apps (Slack). From a user's perspective, I characterize functionality for each of these examples according to the layers of the OSI model. These layers are stacked.

map.berniesanders.com

A Sanders organizer sends an update about a local phone bank event on map.berniesanders.com. The data are converted to zeroes and ones and transmitted by electric current over a system of physical cables.

Facebook

A supporter does a search for the “PeopleforBernie” Facebook page. The data request is converted to zeroes and ones and transmitted (also by electric current) over Ethernet cables for wired communications.

Slack

A volunteer with the ‘Bernie Builders’ Slack team uses her Slack app to ask a question about a canvassing event. The message is converted to zeroes and ones through wireless, bit-level transmission.

An Internet is "an interconnection between multiple networks" (Bruce Campbell).

A Web server is a computer running an application that allows other computers to connect to it and retrieve the Web pages stored there.

3. network layer





about the network layer

At this level, multiple communication channels collectively form a network of devices.

Network-level responsibilities include addressing, routing, and traffic control. The management of IP (Internet Protocol) addresses for all devices is an especially critical function of the network layer.

An IP address is a unique identifying number assigned to each device on the Internet. Like a license plate, an IP address is a kind of serial number used for identification by routers and other devices that want to reach a specific location on the Web.

Internet addresses work to allow devices to connect with one another.

Techopedia calls the network layer the “backbone” of the OSI model.

map.berniesanders.com

The network layer of the OSI model works to establish connectivity between devices.

Routers use IP addresses to route the data. A path is established between routers to a server. Data/information is transmitted and sent back along that path.

The data sent by the organizer travels through routers to reach a destination server.

Facebook

Routers use IP addresses to route the user's data request. A path is established between routers to a name server.

The name server maps the domain name Facebook to its IP address. Data/information is transmitted and sent back along the path established between routers.

After the record has been pulled from the name server database, that record will be stored in the cache of the user’s laptop.

Slack

Here too, data packets are transmitted through data routing paths. Routers use IP addresses to route the data. Data/information is transmitted and sent back along the paths established.

The data sent by the volunteer travels through routers to reach a server.

Each layer of the OSI model responds to service requests from the layer above it and issues service requests to the layer below it.
For example: The transport layer responds to service requests from the session layer (above) and issues service requests to the network layer below.

4. transport layer

about the transport layer

We use the network of devices to transport data using “transport protocols,” which enable devices to communicate with one another.

Protocols include TCP/IP and UDP. These are simply means of transmitting data; they can also be viewed as messaging delivery strategies.

At this layer, information or data from any one device are transported to any other device on the network. The transport layer is responsible for "end-to-end communication over a network,” (Techopedia) ensuring "complete data transfer" (Webopedia).

Data flow control is another transport layer function.

map.berniesanders.com

Using the transport protocols TCP/IP and UDP, data packets are broken into segments and transmitted.

Transport is conducted and completed through the organizer's WAN (wide area network).

Facebook

Using the transport protocols TCP/IP and UDP, data packets are broken into segments and transmitted. The transfer of data to the user's laptop is complete. This is accomplished through the user's LAN (local area network).

Slack

Using the transport protocols TCP/IP and UDP, data packets are broken into segments and fully transmitted via WiFi connection.

5. session layer





about the session layer

This layer is concerned with the management of sessions, which involve “a continuous exchange of information” (Wikipedia). The goal of session management is to provide "an established and reliable session" (Bruce Campbell). In other words, sessions keep our communications “coherent” (Campbell).

Typically, sessions are managed through the use of session IDs. A session ID is an identifier that you can use reliably and repeatedly. It represents you wherever you go on the Web. Session IDs are used by applications to uniquely identify a user.

map.berniesanders.com

The organizer is identified by Session ID, and the session (continuous, reliable) is established.

Facebook

The user is identified by Session ID; the session is established; and a connection is made.

Slack

Slack identifies the volunteer’s device through her session ID, and a connection is made.

A data packet is just an efficient packaging of a piece of a message – a message being anything that is communicated, including text or images.

6. presentation layer





about the presentation layer

The presentation layer is focused on the standard formatting of data. At this layer, data packets are converted for display and formatted (in a consistent and standardized manner) for presentation to the application layer. The presentation layer is also called the syntax layer.

map.berniesanders.com

The organizer's data are converted and formatted for display (although they are not yet accessible to an end user).

Facebook

The Facebook page that was successfully retrieved is formatted for display for the application layer above (not yet for the user).

Slack

The volunteer's message assumes a readable format (though it is not yet accessible).

The aim of web architecture is to ensure reliable services for multiple uses and applications.

7. application layer





about the application layer

The application layer is the highest layer of the OSI model, the top of the stack. It is the layer closest to the end user, providing support for user applications. The layer’s responsibilities are "simply to implement the functions that are needed by users of the network" (TCP/IP Guide). Data arrives at the application layer on the destination device and is displayed.

The name is somewhat misleading, however, as the layer does not refer to specific or known applications. Rather, it is the service layer that enables applications to function.

Application layer components include Hypertext Transfer Protocol (HTTP) and File Transfer Protocol (FTP).

map.berniesanders.com

The application layer receives the formatted data, implements it, and displays it. The organizer's update is posted and is available to users.

Facebook

The application layer receives the formatted data, implements it, and displays it. The Facebook user can access the web page.

Slack

The application layer receives the formatted data, implements it, and displays it. The volunteer's question is posted and answered.