Learning and Using Social Context in Communication Networks: Social Area Networks and the Comm.unity Platform Nadav Aharony MIT Media Laboratory: Viral Communications 01/23/2008 Introduction Networking technology has expanded greatly, nevertheless most advances have been in terms of functionality. There is still a lot that can be done to improve usability of our networks, as they remain very complicated. ©Copyright 2008 Nadav Aharony Main Hypothesis By modeling communication networks after our innate social skills and relationships, we could improve their performance as well as their usability. If the network is an augmentation of our social interface to other people, shouldn’t it also represent our social affinities? ©Copyright 2008 Nadav Aharony Proposed Symbiosis Social Interactions ©Copyright 2008 Nadav Aharony Network Technologies Motivation: Social Awareness People act differently according to situation, context, identity of counterpart(s), or who else is around. Communication devices mostly use hard coded protocols and behavior towards other devices, regardless of the relationship between their owners. ©Copyright 2008 Nadav Aharony Vision LANs, WANs, MANs Physical, geographical hierarchy . Personal Area Network (PAN): Not just any device, but devices used by one user. Storage Area Network (SAN): Not just connectivity, but also storage related features. ©Copyright 2008 Nadav Aharony Vision LANs, WANs, MANs Physical, geographical hierarchy . Personal Area Network (PAN): Not just any device, but devices used by one user. Storage Area Network (SAN): Not just connectivity, but also storage related features. Introducing: Social Area Network (SocAN): Connectivity and socially related features. (Or shall we say – “social services”) ©Copyright 2008 Nadav Aharony Social Area Network - SocAN Social context pervades the network stack. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony Use context and relationship to determine file sharing permissions “Social Awareness Layer” Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Cognitive / Software Radio: Family devices coordinate a frequency hopping sequence Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony Use encryption for communicating with co-workers “Social Awareness Layer” Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Change Wireless LAN’s “Medium access politeness” according to company hierarchy Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Use social network knowledge to route data (“Friendship Routing”) Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” Use different authentication protocols depending on relationships Social Area Network - SocAN Social context pervades the network stack. End-User App Email, IM, File Share, etc. Application e.g. HTTP, FTP, DNS, Telnet Presentation Data Representation & Encryption Session e.g. Sockets, SIP Transport End-to-End Link; e.g. TCP, UDP Network Path Determination & IP, ICMP, ARP Data Link E.g. MAC, Ethernet, 802.11 a/b/g/n, ATM Physical E.g. 802.11 PHY, SONET, ADSL, T1 ©Copyright 2008 Nadav Aharony “Social Awareness Layer” “Social Firewall” Implementation Domain: Face-to-Face Networking ©Copyright 2008 Nadav Aharony Motivation: Face-to-Face Networking Today: Sending a file to a friend standing next to me is like using FedEx to hand him a pencil. Geographic proximity can be used to bootstrap digital interaction. ©Copyright 2008 Nadav Aharony Approach Remote terminals of the big “network cloud” ©Copyright 2008 Nadav Aharony Natural extensions of our body and senses How would we do that? Networking Social Interaction Design Reality Mining Comm.unity Platform ©Copyright 2008 Nadav Aharony Comm.unity: Networking Allow devices to talk directly to each other (“Anything with a radio and can do sockets”) Ad-hoc, wireless, peer-to-peer, one-hop (F2F) NO: Centralized servers, coordination, or administration Scalable. Easily deployed by end users. Implement SocAN ideas ©Copyright 2008 Nadav Aharony Implemented Prototype: Share Content with Different Groups Socially Aware, Context Aware, Cross-Layer Networking Engine File System Interface Groups/Tags Mechanism UDP TCP Broadcast 802.11 Ad-Hoc Already Implemented ©Copyright 2008 Nadav Aharony Partially Implemented Unicast Ethernet Data Collection Engine Comm.unity Component Stack Socially Aware, Context Aware, Cross-Layer Networking Engine File System Interface Groups/Tags Mechanism UDP TCP Broadcast 802.11 Ad-Hoc Already Implemented ©Copyright 2008 Nadav Aharony Partially Implemented Unicast Ethernet Data Collection Engine Comm.unity Component Stack Socially Aware, Context Aware, Cross-Layer Networking Engine Data Collection Engine File System Interface Identity Tools Groups/Tags Mechanism Security Tools Transport Protocols UDP Transmission Modes Broadcast Physical Interface API 802.11 Ad-Hoc Already Implemented ©Copyright 2008 Nadav Aharony Partially Implemented TCP Unicast Ethernet Comm.unity Component Stack Socially Aware, Context Aware, Cross-Layer Networking Engine Relationship Engine Identity Tools Security Tools Context/State Manager “Multiple Identity” Engine Encrypted Control Transport Protocols UDP Transmission Modes Broadcast Physical Interface API 802.11 Ad-Hoc Already Implemented ©Copyright 2008 Nadav Aharony Partially Implemented Data Collection Engine File System Interface TCP Unicast Ethernet Will Implement Groups/Tags Mechanism Comm.unity Component Stack Socially Aware, Context Aware, Cross-Layer Networking Engine Relationship Engine Identity Tools Security Tools Context/State Manager “Multiple Identity” Engine Encrypted Control Transport Protocols UDP Transmission Modes Broadcast Physical Interface API 802.11 Ad-Hoc Already Implemented ©Copyright 2008 Nadav Aharony File System Interface Partially Implemented Gossip Engine Groups/Tags Mechanism Encrypted Data TCP Unicast Multicast Ethernet Bluetooth IR Will Implement Want to Implement Data Collection Engine Comm.unity Component Stack Socially Aware, Context Aware, Cross-Layer Networking Engine Relationship Engine Identity Tools Security Tools Context/State Manager Encrypted Control UDP Transmission Modes Broadcast Physical Interface API 802.11 Ad-Hoc ©Copyright 2008 Nadav Aharony Gossip Engine “Multiple Identity” Engine Transport Protocols Already Implemented File System Interface Partially Implemented “Anonimizer” Mode Network-Coded Transport Pseudo Unicast Multicast Broadcast Ethernet Bluetooth IR ZigBee Will Implement Data Collection Engine Groups/Tags Mechanism Encrypted Data TCP GPS Interface Want to Implement … … … Considering Learning Social Context ©Copyright 2008 Nadav Aharony Related Work: Reality Mining [Eagle & Pentland] Sociometric Badge [Olguin] Reality Mining Networking Social Interaction Design Reality Mining Comm.unity Platform ©Copyright 2008 Nadav Aharony Privacy, Sharing, Interest (PSI) Social Firewal [Miklas] Comm.unity: Device Intelligence Need: Populate device with user relationship / social data. Use devices as sensors for learning the user. (We already carry them with us) Network layer data (e.g. wireless radio scan) Application usage (we own the app!) Additional sensors (e.g. accelerometer) Reality Mining - Learn social relationships. Not totally automatic: Keep user in the loop. ©Copyright 2008 Nadav Aharony On-Device Reality Mining Hypotheses: A single user’s perspective is enough for us. We CAN do it on the device. Privacy advantage: Data stays in user domain Methodology: Reality mining methods (e.g. “Eigenbehaviors”) Hidden Markov Models, standard clustering algs. Start small: Co-workers vs. family & close friends. ©Copyright 2008 Nadav Aharony User Interaction ©Copyright 2008 Nadav Aharony “Social Dashboard” GUI ©Copyright 2008 Nadav Aharony “Social Dashboard” GUI ©Copyright 2008 Nadav Aharony ©Copyright 2008 Nadav Aharony http://community.mit.edu/misc/demo.swf ©Copyright 2008 Nadav Aharony ©Copyright 2008 Nadav Aharony ©Copyright 2008 Nadav Aharony ©Copyright 2008 Nadav Aharony ©Copyright 2008 Nadav Aharony Interaction Design Aspects Mix of online and physical presence Privacy concerns Controlling Identity Impression management Not exposing private relationship information Interaction with one/many peers Understanding and controlling the AI Notifications/Interruptions from the device ©Copyright 2008 Nadav Aharony Communications Unity ©Copyright 2008 Nadav Aharony Generalizing: Social Applications On The Go ©Copyright 2008 Nadav Aharony The Inevitable Online presence and social networks applications are going to merge with our real-world presence and relationships. Location, Location, Location Manual entry (Facebook, Jaiku, Twitter) Base station / Accesspoint calculations (Google “My Location”) GPS (Loopt) Device-to-device sensing (Reality Mining, I’m also dabbling in this area) Many initiatives are already underway: Dating applications Connecting to online content sharing sites (e.g. Flikr) Connecting to online social network sites (Facebook, MySpace) New social networks (Dodgeball) Many more coming… ©Copyright 2008 Nadav Aharony Sample Challenge: Cost of Participation Risk of exposing identity and other information to undesired parties. ©Copyright 2008 Nadav Aharony Sgt. Slaugter Sample Challenge: Cost of Participation Risk of exposing identity and other information to undesired parties. Army Buddies ©Copyright 2008 Nadav Aharony Sgt. Slaugter Sample Challenge: Cost of Participation Risk of exposing identity and other information to undesired parties. Gay Dating ©Copyright 2008 Nadav Aharony Army Buddies Sgt. Slaugter Cost of Participation(cont.) Physicality aspect increases risk. Careless design may lead to exposure of undesired relationship and trust information. “On my client you are marked as offline but I see you here chatting with other people!” Things one can get away with in the online world or direct physical interactions. ©Copyright 2008 Nadav Aharony Great Power, Great Responsibility These technologies have potential to be very useful: Meeting new people with shared interests Knowing that our acquaintances are around Access to desired information and content Local context is very powerful in many domains However, hasty design and implementation could damage trust and privacy, and even expose users to physical dangers. (Or greatly limit the usage scenarios, like what happened to video-conferncing) ©Copyright 2008 Nadav Aharony Initial Design Thoughts Allow users to create multiple identities and choose how to expose them. Defined levels of trust – Granular exposure of profile details. Different types of user groups: Correlate between trust levels and presence information Public: all can see group content and members Private: Invite only. Even group name is not exposed. Open Sign-up: Group name is visible, but sign-up for details. E.g. “invisible” to strangers, “busy” for distant acquaintances, etc Default: Symmetry in information exchange Users can opt-out (expose information to the public, or expose more than their peers) ©Copyright 2008 Nadav Aharony Project Website: http://community.mit.edu Contact: nadav@media.mit.edu ©Copyright 2008 Nadav Aharony