Writable write() write() write() ... end THEN EITHER finish or error to indicate whether successfully done or some error Readable read() read() read() ... THEN EITHER end or error to indicate whether successfully done or some error