Chen, et al.: Design and Implementation of a Desktop Computer Supported Cooperative Work System
DESIGN A N D I M P L E M E N T A T I O N
OF
A DESKTOP COMPUTER SUPPOR' Tsang-Min Chen, Chun-Chuan Yang, Wei-Hsin Tseng, Ing-Chau Chang, Jau-HsiungCOOPERATIVE WORK SYSTEM'
Chi-Chang Lin, Mong-Shu Lee, Nie-Jiang Fon, and Sheily Kaw Communications and Multimedia Lab.
Department of Computer Science and Information Engineering National Taiwan University, Taipei, Taiwan, R.O.C.
Abstract
In this paper, we describe the implementation of a
desktop CSCW (Computer Supported Cooperati\r Work) system using commercially available consumer electronic devices and facilities. The s!.steni is developed on workstations under UNlX and OPEN LOOK environments connected b!. FDDI (Fiber Distributed Data Interface) networks. It pro\ides multi-
party conference with shared white board. shared tcst
editor, calendar. and voting capabilit?, Each confcrcncc with these features can support a groupuarc environment. The design and consideration of the framework of the system is presented. During the implementation. some performance issues. such a s error control, medium synchronization and throughput improvement will also be discussed.
1. Introduction
Due to the increasing power of computer computation and high speed network technology. more services can be provided than a video confercncc system to support cooperative work environment. A CSCW system is hence implemented to meet this demand. This paper describes how video conference systems [l-71 can be enhanced to become a CSCW system.
Previously, we have implemented a \.ideo conference system with shared white board and sonic design limitations and considerations were discussed i n
[1,2.7]. In designing a CSCW system. network design considerations and the management to support traffic of different media with real-time constraints are the ke! issues. The system presented here provides a desktop environment to achieve CSCW using comnierciall! available consumer electronic devices.
'This work was supported by The National Science Council of ROC under
grants NSC-83-0408-E-002-003. NSC-83-040R-E-002-00. and
NSC-83-0425-002- 140.
827
ED iuang,
The s!stcm concept I S shonn i n Fig 1 where a session manager I S used to maintain the overall CSCW
s!stem In ciddttton to session manager. there are also Lottng agent and calendar agent to support coordination bct\\ccn members in cach conference Both \ oting and calendar agents can not be dtrectl! accessed b! all members including chairmen and nttcndants. i n order
to (11 old human intcn cntion The tnforni;ition of cach
conPercncc includes conference name. t! pc. member list and d,ite The conference t!pc v 111 be later c\plained in scctioti 2 2 These information arc pro\ tded by the choirnian before each conference Each conference I S initiated at the s;imc time as its chairman IS registered
After ii conference I S registered b! its chairman. the control of these information 'ire transferred to the chairman Therefore each conference can progress tndepcndentl! \\ i t h others A b Chairman A
,
Chairman B 'c-
FDql Network 2 b b t Attendant14 datLss
I-
-
Attendant 1 ~ Attendant2
Att&dant 3 I*. _ \Conference A shared t e n editor
shared white board
votinq system Conference B
828 IEEE Transactions on Consumer Electronics, Vol. 40, No. 4, NOVEMBER 1994
Each attendant can dynamically register in multiple conferences which are controlled by their chairmen. respectively. The monitor display of each attendant contains up to five video windows with a resolution
360*240 each. Video data is compressed using JPEG (Joint Project Expert Group) boards; however. a software video codec [7] can also be used to reduce the cost. Each attendant can dynamically switch the contest of any window to available remote video sources from different conferences. The frame rate of video ranges from 6 to 12 frames per second depending on the number of video windows opened. Note that the video resolution, number of video windows opened. and frame rates are higher than those in [ 1.2.71.
Two formats, compressed form and vector form. are
used to transmit the data of the shared white-board
depending on the performance and network utilization. The compressed form. compressed by a 2-dimensional run-length coding, is used to transmit the entire screen in cases of loading the screen or joining of new attendants. In addition, the drawing and controlling commands are transmitted using vector form which are organized by drawing tools and commands. Transaction based locking mechanism is used to coordinate shared text editor based on each paragraph of text files. Several attendants can update different paragraphs simultaneously after obtaining the permissions.
Other than the above shared environment. a voting mechanism and a calendar are needed for a CSCW system. The voting capability is provided to resolve conflict of opinions. The key design issue is how to obtain justice and anonymity. Each voting activity is created by the chairman and then voting agent will sent it to all attendants who have registered i n tlic conference. Each attendant can obtain the voting results(voting count) automatically from the agent. The calendar is used to coordinate members' schedule. I t can automatically detect time conflict between members' schedule in arranging a conference meeting. It will also send mails to each member to announce the arrangement of the conference meeting.
There are many design issues to be taken into account in implementing such a system. Some issues have been discussed in [13,14]. This paper describes how multimedia conference systems can be enhanced to become
a
CSCW system during the implementation. I n section 2, we show the system architecture first and show the design and implementation considerations i n section 3. Finally, we conclude sonie remarks i n section 4.2. System Architecture
The hardware of the system contains a group of workstations. On each workstation, there is a desktop environment. connected by an FDDI network. which provides friendly GUI (Graphical User Interface) to users. The GUI is supported by OpenLook widget programming and X-window Programming on X I IR5/0penwin3.0 environment. Beside these, a motion JPEG compression board is required to grab and compress video frames[8-10]. For audio processing, the workstation has built-in hnctions which support I-(
-law PCM (Pulse Code Modulation) audio encoding scheme. Morcover. a hiddcn microphone and a speaker are also built i n the workstation as audio devices.
Due to characteristics of each medium, both TCP (Transmission Control Protocol) and UDP (User Datagram Protocol) multicasting are used in the system. Different constraints on error control are provided. These usage will be discussed in section 3. We will first describe the system modules as shown in Fig.2
r Mall calendar vote shared whne-board shared tex-t-edltor User sne
I'
I
I
1
w,
I
mulllmedla conIcrense) .--' I - G i e G e i - J ~ L---&m"* / Fig.2. Thc CSCW modules.2.1
Session Manager
The session manager, shown in Fig.3.. is the soul of the system. It maintains all information for the initiation of each conference. The information include name. type, members. and dates. Each Chairman can connect to the session manager remotely to setupkancel the conference, addldelete a member. and modify the right of each member. After initialization of a conference. the database is used only for querying the status of each conference. The maintenance and control of the progress of the conferences are then transferred to each chairman.
Chen, et al.: Design and Implementation of a Desktop Computer Supported Cooperative Work System 829
On the window of session manager. each icon represents a conference set up by its chairman. We ciin modify all features of a Conference using friendly GUI. For each conference. all members are shown \vith their rights on the window. The rights include vote. \ideo. audio and an indication to show whether the member is still on-line. Beside these. the voting agent is also implemented in the session manager lvhich provides the voting capability. This feature will be discussed i n Section 2.5.
Fig.3. The display of session manager
2.2 multimedia conference
There are many multimedia conferences[ 23-71 implemented in difference platforms. Our system is implemented o n an FDDI network since the bandwidth requirement of a single video stream is about 4.XMbps
( 5 video sources * 12 K bytes per frames
*
10 frames per second*
8 bits per byte = 1.8 Mbps ). High speedtrunks (e.g. DS3 link ) can be used to connect different FDDI networks for a wider area coverage
The display of the monitor is shoun i n Fig.). I t includes a multimedia conference. a shared-\\ liite board (on the lower-right part) and a shared test-editor (on the lower-left part). There are five video uitid0n.s shown in a conference. One of the windows is the video of local site and the others arc remote sources. Shared memory implementation is used to improw \.ideo grabbing and display. The overall eficienc! is liniitcd by the speed of \ideo grabbing. From our experience. the time for video grabber to grab a frame is about 40
mslframes. Due to the computation po\vcr of the hardware, our system can provide a video rate up to 12
frames per second in the case that the number of the
attendant IS sinaller than 5 Although the total number of attendants ma! be larger than the number of video
\\indons. each attendant can d! n;imtcall! snitch the
contc\t of \ ideo indo\\ to a\ ailable remotc \ideo
SOlllces
Fig -I The displa!. on uscr site
The s! stem also proudcs multi-part! conferences.
A n attendant can dynanrtcall~ register to a conference after obtaining the permission from its chairman After registering to confercnccs. a n attendant c m select otic of the registered conferences to join a t an! time. Howc\cr. thc s!stcni docs not allou multiple conkrcnces to be displayed on otic user site siniultaneousl! . Similarl!. ;I chairman can not register to multiple conferences since i t ma! c a l m problems in confcrencc controlling
T u o t!-pcs of conference room arc supportcd In our s!stcnr Otic uses 21 token to tndtcatc the current speaker i n the conference room This token can be assign b! the
cliairnrsn The attendant can speak after obt;iining the permission or audio rrom the chairman Another type of confcrencc room supports audio miser capabiltt!, Due to synchroiii/;itioii of audio and \.ideo. \'otccs of all
members ;ire mixed togetlicr a t thc rccci\,tng site instead of at ~ l i c sending site
The continuous pla! ing of audio data and the s! nchroniation bctvccn nrcdia are also achieLed b! s k i l l r ~ l design using t v o Ic\~cls of module scheduling to impro\ e the o\ erall cfficicnc!, This vi11 be discussed i n
secrion 3
830
For shared white board. it provides each attendant to use the keyboard or mouse to draw pictures with a resolution of 720*240. Various colors and functions can be selected from the toolbos to sharc drawing picture with others. The toolbox includes color. pcn width, and shape functions. etc.. Two types of data h a w to be processed in the shared white board. In normal situation, each attendant can use the keyboard or mouse to draw picture on it. The shared data has to be multicasted to all others using vector form which can be translated to the command and operation at thc receiving site.
In another case. the entire content has to be transmitted while new attendant takes pan in.
Chairman uses poifit-to-point transmission to transniit the entire screen of the shared data to the new attendant. This data (almost IOOkBytes for the entire sharcd white-board screen ) should not be transmittcd directly without any compression due to performance issue. By real-time constrains. a 2-dimensional run-lengh codcc provides fast and adequate compression rates. These shared data will then be transmitted i n the comprcssed form and required error-free transmission. Furthermore. compressed form of white-board data is also needcd while a picture is loaded and saved.
IEEE Transactions on Consumer Electronics, Vol. 40, No. 4, NOVEMBER 1994
2.4 Shared text-editor
As well as the multimedia confcrcnce and thc shared white board, shared test-editor also plays ti
major role in CSCW system. Shared test editor is controlled by the chairman using transaction operation. Each transaction contains a paragraph of sharcd tcst which can be updated by an attendant arter being locked. Each test file is shared in a conference only. Chairman can loadsave a test file and providc a lock scheme related to each paragraph.
On the lower-left part in Fig.4. the window provides the system message or shared editor. I n normal situation, window will display the information of thc system status. After loading a test from the chairman. all members can modify the test simultaneously from this window after obtaining the permission. Due to thc performance constraint. the updates will bc bascd on the entire paragraph instead of on characters. Thcrcforc. temporary inconsistency may occur during the updates. After the update is confirmed or canceled. chairman will send the shared test to all attendants. Tlic consistency is then achieved.
2.5 Voting system
In CSCW. voting capability is also requircd to support decision making. To prevent human
intenention. thc agent should not be accessible by any user. Chairman can connects to the voting agent to create the single-answcr or multiple-answer vote. The voting agcnt will then scnd thc ballot to each attendant and will pop-up a dccision window on the monitor of each user. After an clapsed time decided by the chairman. the vote count ( result ) will be sent to each attendant automatically. Fig.5. shows the display of the voting ballot and voting result on user sites.
Fig. 5. Thc displa!, of voting system
Fig. 6. Thc display of calendar system
2.6 Calendar
The calendar agent is used to provide an electronic assistant i n CSCW systcm. I t can manage the personal
Chen, et al.: Design and Implementation of a Desktop Computer Supported Cooperative Work System 83 1
The control a n d
1
TCP1
point-to-1
NoI
--- 111;: 1 ntena nccinforniation of tlrc
S! stcm
poi t i t
schedule and remind important e\ents to users I t also can automatically start up some programs to be executed if pre-planned As well as thcsc features. thc calendar can communicate with other members' calendars to make an appointment during the progrcss of a conference By so doing. i t can find sonic t i m c
periods which are available to all members The timc
periods are provided with multiple priorities SCI b! e~icli
member If there are no akailable time periods to ,111
members. the chairman has the right to decide the time for the meeting In Fig 6. \\e shou the displa\ of the calendar on user monitor
,
3. Design Considerations
mcdinni There are many design issues to be considcrcd i n
implementing a CSCW system. We ha\:c to suppot1 different error control mechanisms to pro\.idc efficicnt usage of resources. To provide different error control considerations. different transmission protocols arc used. In this section, we fociis on the following ISSUCS:
1) how to select an availablc protocol with respect to a
specific medium and how to design error control mechanisms accordingly, 2) how to projide media synchronization and 3) how to sclicdule vidco/audio modules to improve system performance.
3.1 Network protocols and error control
In choosing network protocols. ;I point-to-point
protocol. such as TCP. would bc impractical to scnd shared data since each packet has to be scnt se\,eral times during a conference. Besides. the protocol stack and checksum of TCP are the bottlenecks of thc
performance when sending real-time traffic. such ad video and audio[l4]. Hence. we used a port assigning mechanism together with UDP to achievc the multicasting capability. By so doing. the nct\\.ork traffic load is greatly reduced.
In [ 11.121, it was pointed out that 100'%, crroi- fi-cc transmission of voice packets and \ideo packets arc not necessary as long as the! arc properly encoded. For example. it has been shown i n man! cspcrimcnts that digitized voice packcts can srilTcr a packct loss percentage up to 2%. Therefore both \.oicc and \.ideo can be carried without error control under efficient video/audio performance control. Hence UDP multicasting without error control is a reasonable candidate for these media.
However, the connection management information requires error-free transmission sincc i t is thc core of
the system. For example. if the chairman has to Ica\e the Conference early. a ne\\ chairman must bc clcctcd
nctuork T \ method real- re-T\ protocol time b\ AP
using thc votc capabilit!. Therefore. these features \vhich requires error free transmission can be provided b! TCP.
As vcll ;IS s!stcm control information. the data of
both shared tcst and shared white-board need error free transmission to maintain consistcnc!. Due to performancc constraint. a niulticast protocol has to be tiiiplcmcntcd to transmit thc shared data. Therefore. a UDP multicast with rc-transmission protocol is pro\ided herc The UDP multicast protocol is used to transmit the sharcd data And. the application program uscs ;I UDP point-to-point protocol to request a re- transinission rrom its pccr application program when crrors happcn i n tlrc s! stcm
To sutniii:iri/.c . \IC use the following table to dcscribc all nct\\ork protocols and error control Il1ccl1;IIiIsI11s rlscd 111 t l l C S! stcm Vector form of SWB Comprcsscd form of S W B Tc\t data of STE crror rc-T\ data scnt b\ AP
UDP multicast No Yes
UDP point-to- No Ycs
polnl
UDP multicast No Yes UDP point-to- No Yes
point
\ideo
1
UDPI
multicastI
yesI
N OI I I I
audio
I
UDPI
multicastI
Yes1
NoI I I I
Tlic information
I
TCPI
point-to-I
NoI
---of \ ote. calendar
I
I
pointI
832 IEEE Transactions on Consumer Electronics, Vol. 40, No. 4, NOVEMBER 1994
Audio and video synchronization can be achieved using interleaved transmission at the sending site and delay/jitter detection at the receiving. The audio packets are used to synchronize other media because there is implicit timing information in it. At the sending site. audio packets are sent periodically with respect to audio sampling rate. At the receiving site. the audio device plays the voice with the speed the same as sender. Therefore the jitter of audio packet which arrives too early can be detected by examining whether the device buffer is empty or not.
To reduce the end-to-end delay of media transmission in the system, which is about 300ms now. we do not want to introduce extra buffers on receiving site. Even if we do not introduce extra receive buffers which can be used to avoid the discontinuity of voice. the delay of voice will still be accumulated by delay jitter of audio packets, especially when the network load is heavy. In the system. we use silent audio packet detection to remove this delay accumulation.
Another method to resolve this delay jitter and accumulation problem can be achieved by the priority scheduling supported by FDDI networks. That is. we can send audio packets with higher priority or send audio packets in synchronous traffic mode, so that the audio packets will suffer much smaller delay and jitter and can be used to synchronize other media.
We use sequence number and synchronization indcs to detect the mis-ordering of packets and the delay or jitter of media transmission. In the system. we use 8k sampling rate to record audio such that there will be Ik
bytes of audio data every 125 ms. That is. there are 8
audio frames (whose size is lk bytes) and N video frames (whose size is 8-12k bytes after being compressed) to be transmitted per second. where N
depends on the video grabbing rate determined by tlic system, which can also be set by user at its monitor. Audio frames are grouped two by two, where each group is labeled with the same synchronization index. This index is also tagged in the corresponding video frames.
Video frames with the same index are arranged io
be sent in the same time interval as their audio counterpart, and are supposed to be received at about the same time as the corresponding audio frames are received. More precisely, the video frames are required to be received in the same time interval as the corresponding audio frames. or either the previous one or the following one time interval. Otherwise. they should be discarded. This provides audio/video synchronization in 500ms. In Fig.7. we show the operation of sequence number and synchronization
indes. For practical implementation, sequence number and synchronization index can be implemented in the same data field.
At the sending site. each audio frame can be carried
in an FDDI MAC (Media Access Control) frame and then be sent periodically. Fig.7a shows that the periodical sending of audio frames with implicit timing information in them. Now. we show the cases which will cause timing and synchronization problems at the receiving site in following figures. Fig.7b shows that the loss of audio packet. In the figure, we use the dash
(
-
) to denote the loss of packets. This loss can be detected by the sequence number and it is treated as a receipt of a silent audio packet. Due to video frame fragmentation. if an FDDI frames is lost. all the FDDI frames belong to the same video frame have to be discarded. I n Fig.7~. the last FDDI frame in the video frame I is lost. It can be detect by the segmentation index which also can be implemented in the sequence number in the practical system. Then, all FDDI frames in the video frame I have to be discarded. The cross (x) in the figure is denoted as discarded frames.U : vldeo packets : audio packela Sendlng Slde :
vldeo grabbing rate = 8 frames I second
1 B
S y l K I D I I 2 ? 3 3 4 4
S a i I D I I 2 2 2 3 3 3 14 5 5 6 6 6 7 7 7 X X S ~ ! l ' I I ~ I I 2 2 3 3 4 f
I-Ig.7;i T h e periodic audio packels
Receiving Slde : (four cases lor packet discard )
I'ig.7h audio packet loss Flg.7~. video packet loss
X ( discard )
sync. ID. ---I 1 1 1 2 2 3 3 i O j
-
2 4since 4-2> 1
Fig.7d. vldeo advance ( audlo delay )
Chen, et al.: Design and Implementation of a Desktop Computer Supported Cooperative Work System 833
For the audio and video synchronization. we use synchronization index to achieve this constraint and show the examples with the video grabbing rate 8 frames per second in Fig.7d and Fig.7e. In Fig.7d and Fig.7e, we show the cases of audio delay ( i.e. video advance ) and video delay ( i.e. audio advance). respectively. In Fig.7d. video frame 7 has the sync. index 4 which is larger more than one with respect to the next audio packet ( its index will be 2 ). Then. the FDDI frames with sync. index 4 will be discarded due to the difference of synchronization index between video and audio are larger than 1. Note that i n thcsc cases, there should be 2 video frames in the same time interval since the video frame rate equals to audio frame rate. In the Fig. 7e. we also show the case that video frame 2 comes later than audio frame 5 Siniilarl!.. video frame 2 will be discarded also.
3.3 Routine scheduling
In OPEN LOOK programming cn\~ironmcnt. the system uses event trigger method to handle tlie receipt of an I/O event. These events include thc receipt of real time media packets, e.g. video or audio. and the receipt of non-real time media packets. e.g. test data or commands required by X-sewer. For each e w ” OPEN LOOK will bind a program routine to execute it. I n this sub-section, we will show how to schedule the program routines associated to each event in order to impro\.e the overall system performance.
Two levels of scheduling are implemented i n our system to provide continuous media transmission. the!. are intra-routine level and inter-routine Ic\,cl scheduling respectively and will be explained i n the following.
Inside the program routine. we can predict the
arrival of frames to reduce the waiting time of real time frames. This is called intra-routine level scheduling. For intra-routine level scheduling. we mainly focus our attention on the characteristic that a \.ideo frame ma!.
be segmented into multiple FDDI frames. For instance. the size of a video frame is about 8K to 12K b!,tcs after being compressed. It has to be segmented into t \ \ o or three FDDI M A C frames. At the sending side. thcsc FDDI M A C frames are sent at tlie same time. Hence. we can predict that there are one or t\vo consecutiw FDDI M A C frames to arrive after the first FDDl MAC frame. Therefore, after the recei\ing of a \-ideo FDDI frame, we use a loop to receive the following FDDI M A C frames and decide ( or predict ) whether they are video frames or not.
For inter-routine level scheduling. we focus on the characteristics of real time and non-real time media
under OPEN LOOK programming on UNIX multi- tasking cncironiiient I n the normal situation. there I S
onl) one program routiiic to be bindcd on a n e\ent to
s i in p I I f! the progra in design a nd 1 in pl e me 11 tat io 11 1 n this s\stem tlic number of p r o g r m rou’tines to be binded on an sent I S related to the trafic load and the number of remote \ideo sources The trafic load can be decided based on the error rate detected b! the s!stem For e\amplc i t I S better to bind 3*N+C rccci\c routines
to the e\ ent of arriLal of \ideo frames \\here
N
I S thenumber of attendnnts <ind C I S the parameter \\ hicli should be chosen larger for hea\icr trafic load to achic\ e better performance Notice that \\e multiple
N
b\ 3 I S due to the fact th,it there arc 3 FDDI frames per \ideo frames
Tlie benefit of inter-routine IC\ el scheduling can be re\ e,ilcd i n multi-tasking cm ironmcnt When a n c\ent
occurs X-sencr needs ‘I little time to cope \\it11 i t For
c\ninplc sen er U i l l clicch \\ hctlicr thc triggered
routine I S oilcible nnd \\ hctlicr the c\cnt queue I S
a\nilablc If \ \ e onl\ bind rccci\e routine to a real time medium FDDI frames \ \ i l l be lost \\lien man! \ideo frames come a t the snnic time This I S caused b! t h a t rcccn e routine ciin be binded again to the nc\t real time e\ ent onl! d t c r the completion of 11s prc\ ious one (nonprempti\e) Hence the FDDl frame \ \ i l l be lost
nhcn the recei\e buffer I S full
Therefore. \\e use d\ naiiiic assignment to bind tlie smic recei\ e routines associated to iiii c\ ent incurred b!
tlic arri\al of e x h rcnl time medium sc\cral times The number of the routines bindcd to ‘in I/O e\ cnt depends
on the number of remote \ ideo sources and traffic load
Therefore each rcccn e routine cnn be biiidcd before the completion of p r o ioiis c\cnt during the I/O \\ailing of tlie prc\ iotis recci\c routines And then the rccci\c routines ciin be in\okcd b\ X-scncr as soon as the completion of prc\ ioiis one This d! namic scheduling mechanism can reduce tlic error rate b\ more than 20% Beside this scheduling IS also used to resol\c the
problem of \ oicc discontinuit\ since the packet loss rrite i s loucr
4.
Conclusion
With the increasing processing poner of
I I I C \ ~ C I I S I \ ~ uorkstations and high speed net\\ork
tcchnolog~. users can actuall! ciijo! thcmsclces i n the
encironnicnt of CSCW We procide ;I desktop CSCW s!stcm with multimedia conferences. shared hite
board shared te\t editor and \oting capabllit! Three
bels of error control. protocol design and module
834 IEEE Transactions on Consumer Electronics, Vol. 40, No. 4, NOVEMBER 1994
implemcntation to improvc tlic overall system CommiinicatioiIs. Vol. COM-29. pp. 10 1
-
109. Fcb. ported to ISDN (Integrated Service Digital Network) 1121 T.M.Chen and D.G.Messerchmitt. "Integrated networks as long as the network platform is available. voice/data switching." IEEE Trans. on Communications. Vol. 26. pp. 16-26. June 1988.1131 J.-H. Huang and S.-H. Lee, "MHTP : A
Multimedia High-Spced Transport Protocol." Proc. IEEE Globecom'92. pp. 1364-1 368, Dec. 1992. performance. Finally. such a system can be easily 1981.
References
J.-H.Huang, W.-H.Tseng, M.-J.Ding. Y-S.Su and L.-C. Wu, "VirtualTalker: An On-line Multimedia Systems on Token Passing Networks," IEEE Trans. on Consumer Electronics. Vol. 39. no. 3.
J.-H.Huang, C.-C.Yang, W.-H.Tseng, C.-W. Lee. B.-J.Tsaur, L.-K. Chuang, and W.-J. Liu. "Design and Implementation of Multimedia Conference System on Broadcast Networks" Proc. 18th Annual Local Computer Network Conferencc. Miniapolis, pp.337-341. Sept. 1993.
M. Arango et. al. "The touring Machine System." Communications of the ACM. Vol. 36. No. I . pp 68-77, Jan. 1993.
P. V. Rangan. and D. C. Swinehart. "Software architecture for integration of video serviccs i n the ether phone system," IEEE JSAC vol.9. no. 9. pp. 1395-1404. Dec 1991.
W.H.F.Leung, T.J.Baunigartner. Y.H. Hwang. M.J.Morgan, and S.C.Tu. "A Software architecture for workstations supporting multimedia conferencing in packet switching networks", IEEE JSAC vo1.8. no. 3. pp. 380-390.
Apr. 1990.
C. Nicolaou, "An architecture for real-time multimedia communication system." IEEE JSAC vol. 8, no. 3, pp. 391-400. Apr. 1990.
H.-C.Huang. J.-H. Huang. J.-L. Wu "Real-Time Software-Based Video Coder for Multimedia Communication Systems". Proceedings of ACM Multimedia 93, pp. 65-74. Aug. 1993.
G.K. Wallace, "The JPEG Still Picture Compression Standard," Communications of the ACM, Vol. 34. No. 4. pp 30-13. Apr. 1991. MPEG standard draft ISO-IEC/JTCl SC29 on 22. Nov. 1991.
1989 CCITT Study Group XV. TD 35. Draft revision of recommendation H.261 : Video codec for audiovisual services at px6-l kbitds. Image Communication. pp. 221-239. Aug. 1990.
N.S.Jayant and S. W. Christense. "Effects of
Packet Losses in Waveform Coded Speech and Improvement Due to an Odd-Evcn Samplc- Interpolation Procedure." IEEE Trans. pp. 609-618, Aug. 1993.
I141 J.-H. Huang and C.-W. Chen
"On
PerformanceMeasurements of TCP/IP and its Device Driver." Proc 17th Annual Local Computer Network Conference. Miniapolis. pp.568-575. Sept. 1992.
Biographies
Tsang-Min
Chen received theB S and M S degrec in Electronic
Engineering from National Taiwan Institute of Technology, Taipci. Taiwan. in 1990 and 1992. respectively Since then. he has bccn a Ph D student i n the
department of Computer Science and Information Engineering at National Taiwan University His current research work IS focused on high-speed
netnorking. iiiultimedla networking, computer supportcd cooperatiw work. and distributed systems
Chun-Churn Y m g received his B.S. degree in computer and information science from National Chiao-Tung University. Hsin-Chu. Taiwan. R.O.C.. i n 1990. He has been a Ph.D. student in the department of Computer Science and Information Engineering at National Taiwan University. Taipei. Taiwa 11.
His current research topics include multimedia network protocol, admission control. flow control and ni til t i media medium sy ncli roni zat ion,
jVei-IIsin 'Iseng received his B.S. dcgree i n computer science and informalion engineering (CSIE) from Tatung Institute of Technology. Taipei. Taiwan. in
I989 and thc M.S. degree i n CSIE
.... . from National Taiwan University
(NTU) i n 199 1 . Since then. he has been a Ph.D. student in NTU.
Chen, et al.: Design and Implementation of a Desktop Computer Supported Cooperative Work System
-
835
HIS current research topics include fon\ard correction coding. admission control. \ideo niodeling and video server architecture
Ing-Chau Chang rccei\cd his B.S. degree in the department of Computer and Information Science from National Chiao- Tung Unikersity. Hsin-Chu. Taiwan. R.O.C.. i n 1990 and the M.S. degree from National Taiwan University. Ta i pci. Taiwan. I II
1992, Since then. he has bccn it Ph.D. student i n CSIE at NTU. His current research topics include computer supported cooperative works
.
network scheduling anddistributed multimedia net\vork.
Jau-llsiung l l u a n g recei\.cd the B.S. dcgrec i n clectrical engineering from National Tai\\,an Universit).. Taipci. Taiwan. i n 1981 and the M.S. and P1i.D. degree in computer science from the Universit! of California. Los Angeles. Los Angeles. CA. U.S.A.. in 1985 and 1988. rcspccti\.cl!.. Since 1988. he has been a member of the faculty i n
the Department of Coniputcr sciencc and Information Engineering. National Taiwan University. v.hcre hc is
currently a professor. He has published o w -IO
technical papers in the areas of multimcdia nct\\.orking. high speed networking. parallel and distributcd systems and performance evaluation of computing systems.
Chi-Ch:rng I,in reccned his B S degree 111 Computer Scicnce and
Information Enginccring rrom Tatuiig Institute of Technolog! Taipei. Tainan. i n I993 Since
1993. he has been a graduate student in National Tanian Universit! HIS current research topics I S focuscd on high speed
nehiork prolocols
hlong-Shu I x c rcceiwd his B S . degree i n computer scicncc and
i ilforniat i on fro ni
National Tai\\aii Uni\.crsit! .
Taipei. Tai\\an. i n l 9 0 3 . Sincc 1993. he has bccn a graduate student i n NTU. His crirrcnt
eng i ncc ri n g
research toplcs IS focused on high speed nct\\ork protocols
Nic-Jiang Fon rcccixd his B.S. dcgrec in computcr scicncc and information cnginecring from TamKang Univcrsity. Tamsuei. Tai\\an. i n 1993. Since 1993. he
has bccn a graduatc student in
Natioiial Taiwan University. His current rescarch topics is focused on multimcdia communication.
Shcil? Kaw rccci\cd her M S dcgrcc i n computer science and 11 fornla t i on eng i iiccri iig from National Chiao-Tung Univcrsit! .
Hsin-Chu Taiwan R 0 C i n
I993 Sincc 1997. shc h a s bccn <I
gradu;ite student i n National
Tai\\aii Unncrsil! Hcr current rescarch topics IS focused 011 high spccd nctnork protocols